• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Seriöser Aufbau einer Homepage

Sylnois

Mitglied
Heyho Leute

Hab letzte Woche mit dem Lernen von PHP und MySQL begonnen. Damit ich später eine seriöse Seite entwickeln kann, möchte ich wissen wie man eine Seite "richtig" aufbaut.

Ich habe meine Homepage bisher so gestaltet:
Code:
<html>
  <head>
    //Metadaten
    //Stylesheet(nur eine CSS-Datei)
  </head>
  <body>
    <div class="header">
      include("php/header.php");
    </div>
    <div class="main">
      include("php/main.php"); 
    </div>
</body>
</html>
Meine Ordnerstruktur sieht so aus(*Ordner):
Code:
[B]*php
  *header[/B]
    header.php
  *[B]main[/B]
    main.php
[B]*images[/B]
  image.png
default.php
Meine Fragen lauten nun was steckt man alles in einer Datenbank(Userdaten, HTML-Code, etc.)? was löst man am besten mit PHP? wie soll die Ordnerstruktur aufgebaut sein?

Liebe Grüsse
Sylnois

Edit: Ich habs mal im PHP-Forum gepostet, da ich an erster Stelle wissen möchte wie man PHP am besten einsetzt.
 
Werbung:
hmm mal überlegen. die seite ist ja nichts. zeig vielleicht mal den inhalt deiner page. also main.php und header.php. was soll man dazu sagen...;)
PHP bedeutet Personal Homepage Tools. php läuft serverseitig also nicht wie JS mit dem browser. dein host muss php unterstützen.
mit php kann man spielereien wie counter, blog, gästebuch, warenkorb, loginsystem usw. realisieren. dinge wie ein gb oder loginsystem und warenkorb kann man eigentlich fast ordentlich mit php alleine realisieren. dazu braucht man eine datenbank. in der datenbank werden informationen zum beispiel wie bei einem login system name, email, adresse...gespeichert und bei einem online shop zum beispiel der warenbestand. wie viele computer sind noch da? das kann man mit MySQL realisieren. aber du sagst ja das du letzt woche angefangen hast php zu lernen. hmmm...wenn man schon php lernt sollte man auch wenigstens den hintergrund von php und mysql verstehen und auch den grund wofür man es benutzt!
lg htmlpro
 
Erstmals, danke für deine Antwort.

Da wäre mal die Seite: Xoltec Studios - Startseite
Nicht wundern wenn ein Link ins nichts führt.
Die Seite hatte ich mal entwickelt und daraus wurde jetzt meine Testseite.
Logindaten könnt ihr haben:
username: admin
password: admin
sowie den Sourcecode von default.php:
Code:
<?php session_start();
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>
    <head>
        <title>Xoltec Studios - Startseite</title>
        <?php include 'php/meta.php'; ?>
    </head>

    <body>
        <div class="backsite">
            <h1 class="header"> </h1>
            <div class="boarder"> </div>
            <div class="topinfo">            
                <div class="attractiv"> </div>
                <div class="topnewspic"> </div>
                <div class="topnewsinfo">
                    <?php include 'php/backsite/topinfo/topnewsinfo.php'; ?>
                </div>
            </div>
            <div class="boarder"> </div>
            <div class="backmain">
                <div class="leftbackbox">
                <?php
$bla = $_SESSION['username'];
if(!isset($bla))
   {
        include 'php/backsite/backmain/leftbackbox/navigation.php';
   }
else{
    include 'php/backsite/backmain/leftbackbox/navigationadm.php';
    }
?> 
                </div>
                <div class="rightbackbox">
                    <?php include 'php/backsite/backmain/rightbackbox/login.php' ?>
                </div>
                <div class="main">
                    <div class="content">
                        <?php include 'php/backsite/backmain/main/cttdefault.php' ?>
                    </div>
            </div>
        </div>
        <div class="boarder"> </div>
        <p class="footer"> </p>
    </body>

</html>
Der Inhalt aus allen Includephpdateien besteht rein aus HTML und CSS ausser das Login.

Ich dachte eher an konkrete Beispiele oder irgendwelche Regelungen.
Wie meine seine Umbgebung einrichtet ist mir eben schon klar.
Das man Logindaten, warenbestand, etc. in einer Datenbank erfassen sollte ist mir auch klar. Oder darf man HTML-Tags in der Datenbank erfassen oder ist davon abzuraten.

Mit nützlichen Links wäre ich auch schon zufrieden. :D

Tut mir Leid wenn ich ein bisschen nervig rüberkomme.
Ich möchte nur wirklich in ferner Zukunft seriöse Seiten entwickeln können.

LG
Sylnois
 
Werbung:
Aus dem Quellcode wird ersichtlich, dass du dich zunächst mal noch um die Grundlagen von HTLM kümmern solltest. Was da zu sehen ist, ist die bekannte div-Suppe. HTML besteht aus mehr als nur dem Element div.

Diese Elemente enthalten alle keinen Inhalt, ausser den Inhalt der Datei, die eingebunden wird. Ein HTML-Element gibt seinem Inhalt eine semantische Bedeutung, leere Elemente sind daher sinnlos.
PHP:
            <h1 class="header"> </h1>
            <div class="boarder"> </div>
            <div class="topinfo">            
                <div class="attractiv"> </div>
                <div class="topnewspic"> </div>
                <div class="topnewsinfo">
                    <?php include 'php/backsite/topinfo/topnewsinfo.php'; ?>
                </div>
            </div>
            <div class="boarder"> </div>
            <div class="backmain">
                <div class="leftbackbox">
Die Grundlagen kannst du auf dieser Seite erlernen (Einführung | Webdesign mit XHTML und CSS).
 
Danke für den Link.
Bin an einer Stelle gestossen in der erklärt wird wie man ein HTML-Element ohne Inhalt definiert.
Wäre das von daher korrekt?
Code:
<h1 class="header" />
            <div class="boarder" /> 
            <div class="topinfo">             
                <div class="attractiv" /> 
                <div class="topnewspic" />
                <div class="topnewsinfo"> 
                    [COLOR=#0000bb]<?php [/COLOR][COLOR=#007700]include [/COLOR][COLOR=#dd0000]'php/backsite/topinfo/topnewsinfo.php'[/COLOR][COLOR=#007700]; [/COLOR][COLOR=#0000bb]?> 
[/COLOR]                </div> 
            </div> 
            <div class="boarder" /> 
            <div class="backmain"> 
                <div class="leftbackbox">
 
Das ist von der Syntax genauso korrekt wie das, was du vorher hattest.

Diese Elemente enthalten alle keinen Inhalt, ausser den Inhalt der Datei, die eingebunden wird. Ein HTML-Element gibt seinem Inhalt eine semantische Bedeutung, leere Elemente sind daher sinnlos.

Damit war gemeint, dass HTML-Elemente dazu dienen, Inhalt auszuzeichnen. Ein leerer Container zeichnet keinen Inhalt aus und hat deshalb keine Daseinsberechtigung. Du "missbrauchst" den Container zu Designzwecken.
 
Werbung:
Wäre das von daher korrekt?
Nein, so schließt man inhaltslose Elemente wie <input />, <br />, <img /> oder <hr />.
Elemente, die einen Inhalt enthalten, haben immer ein Start- und ein Endtag.

Ansonsten hat es kruschimappel schon erklärt. Layout macht man mit CSS, nicht mit HTML. Da diese Elemente keinen Inhalt haben, solltest du sie löschen.
 
Jetzt versteh ich nix mehr.
Wie soll ich denn im CSS das Layout gestalten?
Irgendwo muss ich doch dann die Klasse "aufrufen".
 
Du kannst einem Element mehrere Klassen zuweisen.
Hast zu z.B. eine Überschrift, die mehrere Klassen besitzen soll, machst du das so.
HTML:
<h1 class="class1 class2 class3">Überschrift</h1>
 
Werbung:
Sieh dir meine Seite (nochmal) an: sylnois.bplaced.net
Wie genau würdest du eine Seite bei so einem Design aufbauen.
Könntest du mir ein Beispiel geben?
 
h1: Das ist nicht als Banner gedacht. Es ist wie Überschrift 1, 2, 3 etc in Word. Du unterteilst deinen Inhalt also hierarchisch.

Du hast ein wenig zu viele verschachtelte divs. Z.B. die Navigation: Warum hast du ein div in dem nur die Navigation ist? Du kannst stattdessen dem ul die nötigen Eigenschaften zuweisen.


"Regeln": Im Grunde gibt es keine Regeln. Den Besucher interessierts nur, ob alles funktioniert, ob es übersichtlich ist, gut gestaltet etc.
Dann kommt mal Kompatibilität: sieht es in allen Browsern gleich aus? Wie sieht es mit kleinen Bildschirmen aus? Will ich ein separates stylesheet für mobile-Browser haben?
Screenreader, Google und Co: HTML bietet dir verschiedene Elemente, die, technisch gesehen, die gleiche Funktionalität haben. Allerdings haben sie eine andere Bedeutung. Es ist wichtig, dass du weisst, welches Element wofür gedacht ist. Nur hier hast du effektiv "Regeln", ansonsten kannst du sagen "Solang's funktioniert"

PHP: Auch hier gibt es keine Regeln in dem Sinne. Natürlich gibt es Praktiken die verschrien sind. Falls mal jemand anders an deinem Projekt arbeiten sollte, erwartet er vermutlich eine saubere Programmierung. Das kann man nicht in einem Forumspost erklären. Die einzige "Regel" die du dir selbst stellen MUSST, ist Sicherheit.
 
So wie jede andere Seite auch, indem man sich zunächst nicht um das Design kümmert, sondern den Inhalt korrekt auszeichnet.

HTML:
<h1>Kontaktiere uns</h1>
<p>Habt Ihr Fragen? oder eine brilliante Idee? Dann schreibt uns und wir melden uns so schnell es geht zurück. </p>
<a href="">Artikel lesen</a>
<ul>
  <li><a href="">Startseite</a></li>
  <li><a href="">Kontakt</a></li>
  <li><a href="">Gästebuch</a></li>
</ul>
<h2>Xoltec Studios ist inaktiv</h2>
<p>Wie ihr sicherlich schon bemerkt habt, sind wir momentan inaktiv...</p>
<form action="" id="">
  <fieldset>
    <legend>Login</legend>
    <label for="name">Name</label>
    <input type="text" id="name" name="name" value="" />
    <label for="password">Password</label>
    <input type="password" id="password" name="password" value="" />
    <button type="submit">Login</button>
  </fieldset>
</form>
Das ist, wenn ich nichts vergessen habe, das gesamte HTML deiner Seite. Die Grafiken und Hintergrundfarben, sowie Abstände und alles andere grafische, wird per CSS zugewiesen. Dafür kannst du IDs und Klassen vergeben.
 
Werbung:
OK. Ich glaube ich habs langsam gerafft.
Ich kanns nicht glauben, dass das der ganze Inhalt meiner HTML-Seite darstellen sollte. :D
 
Werbung:
Danke für die Links.
Noch ne Frage zum Design.
Auf meiner Seite(sylnois.bplaced.net/default.php) ist ja oberhalb ein Header und gleich darunter ein Balken zu sehen. Was für Elemente soll ich bei den beiden benutzen? Divs wären ja unpassend, weil ich den Header und den Balken ohne Inhalt fülle.
 
Werbung:
Du benutzt gar keine Elemente dafür. Wenn sie keinen Inhalt haben, haben sie nichts im HTML verloren.
Du kannst allerdings andere HTML-Elemente, die du aus inhaltlichen Gründen sowieso nutzt (z.B. <h1>), mit CSS umgestalten. So könntest du beispielsweise dem h1 ein riesiges Hintergrundbild zuweisen und die Überschrift genau mittig darauf positionieren (oder ähnliche Schandtaten begehen). Nur Elemente speziell für Designzwecke einzufügen, solltest du vermeiden.
 
Zurück
Oben