|
||||
![]()
<weniger interessant>
Wenn das Thema hier unerwünscht ist, möge es der Administrator dieses Forums doch bitte löschen. Ein vergleichbares Thema habe ich nicht gefunden, immer nur Bruchstücke. Diese Fragen werden in den Bereichen CSS und XHTML sehr oft gestellt, ich hoffe das dieses Thread als Ressource hilfreich ist. Ich will hier "kurz" erklären, was PHP ist, was man dazu braucht und wie man "Daten in ein Div laden" kann, bzw. wie man seine Navigation auslagern kann, ohne das man für jede neue Seite den Quellcode dort reinkopieren muss. Denn wenn man dann eine Kleinigkeit verändern will und man womöglich schon 20 Seiten hat, kann das durchaus stressig werden. </weniger interessant> Einleitung- Was ist PHP? PHP ist eine OpenSource Scriptsprache, die Serverseitig läuft. Momentan ist PHP5 die aktuellste Version. PHP ist sehr leicht zu erlernen und besonders flexibel. PHP ist nur schwach typisiert. Bietet ab PHP5 vor allem viel in der Objektorientierung und man findet in PHP auch vieles aus C++ wieder. PHP bietet auch einfache Schnittstellen zu MySQL und anderen Datenbankservern (DMS) an. PHP kennt nicht nur eine Syntax, sondern viele verschiedene. Das ist für Leute die bereits mit visualBasic gearbeitet haben, besonders komfortabel, denn diese Syntax kennt PHP auch annähernd. Serverseitige Scriptsprache? Das heißt, das PHP auf dem Server läuft, auf dem eure Webseite liegt. Der Webserver erkennt die Dateiendung *.php und schickt die Datei automatisch zum PHP Parser (Auch Interpreter genannt). Der PHP Parser verarbeitet den Code und schickt ihn anschließend in HTML Form wieder zurück an den Webserver, der wiederum die HTML Daten an den Clienten (Den Browser) schickt. Folglich: Der Browser wird niemals PHP Code sehen! PHP ist weit verbreitet und ist fast in jedem Hostingpaket enthalten. Die Free Space Anbieter Ohost und Funpic bieten ebenfalls PHP an. PHP Lokal? PHP muss mit einem Webserver auf euren Lokalen System installiert sein, damit Ihr eure PHP Dateien auch lokal testen könnt. Die PHP Dateien müssen sich dabei im DocumentRoot des Webservers befinden (Meistens htdocs oder httpdocs). man kann sich einen Apachen unter Welcome! - The Apache HTTP Server Project herunterladen und PHP unter PHP: Hypertext Preprocessor. Doch für den normalen Coder viel zu auf ständig. Also haben sich einige hingesetzt und ein komfortabeles Server Paket zusammengestellt, kostenlos! Dieses Paket ninnt sich "XAMPP" und erfreut sich bei den meisten größter Beliebtheit. Habe ich PHP? Das lässt sich mit folgenden Schritten ganz einfach feststellen:
PHP-Code:
Sollte euch die Datei allerdings zum downloaden angeboten werden (oder sonstiges), so unterstützt eurer Webspace kein PHP! Sollte euer Webspace auch kein ASP.NET unterstützen und Ihr bezahlt dafür auch noch Geld, ist es IMHO hinausgeschmissenes Geld. Zwei Möglichkeiten Daten auszulagern In PHP Daten "auszulagern" ist sehr einfach. PHP bietet dafür 4 Funktionen an:
Solltet Ihr nicht eine config Datei mit wichtigen Variablen für den späteren Verlauf des Scriptes einfügen, so solltest Ihr schlicht und ergreifend include nehmen. Den Funktionen ist es egal, welche Extension/Dateiendung die Datei hat. Ein einfaches Beispiel: PHP-Code:
1. Möglichkeit der Auslagerung Viele handhaben es so, dass Sie Navigation, Header und Footer auslagern und jeweils in Ihre Dateien includen. Das sähe vermutlich so aus: PHP-Code:
in der Navigation.html dann eure Navigation. In der footer.html muss dann zwingend auch </body></html> enthalten sein! Die Datei in der PHP Code ist, muss natürlich als *.php abgespeichert werden. Normalerweise liefert PHP seine Daten immer mit dem MIME-Type (Content Type) text/html aus. Anmerkung: Diese erste Methode finde ich nicht so gut. 2. Möglichkeit Diese zweite Möglichkeit ist eher monolithisch und stützt sich auf GET Parameter, wo eigentlich immer der Content eingefügt wird, also das Gegenteil von der ersten Möglichkeit. GET? GET sieht wie folgt aus und hat bestimmt schon jeder einmal gesehen (Query String): Code:
index.php?value=soundso&value2=das+und+das Mit dem = Zeichen werden den Variablen Werte zugewiesen. Möchte man Leerzeichen verwenden, so muss man ein + verwenden. Sonderzeichen sollte man sich sparen. Am besten ist es wenn man sich an den ASCII Zeichensatz hält, oder man die Zeichen maskiert. Vorsicht, per GET können nicht beliebig viele Werte übergeben werden! Mit PHP kann man wie folgt auf die "Variablen zugreifen: PHP-Code:
$_GET['value'] beinhaltet den Wert soundso und $_GET['value2'] den Wert das und das. Nach dieser kleinen Klärung, von GET, stelle ich hier nun einfach mal einen Beispiel Code rein: PHP-Code:
Es wird die Variable $_GET['page'] auf ihre Werte überprüft. Sollte kein Wert zustimmen, trifft default: zu (Eine Fehlerseite wird eingebunden, wenn der $_GET['page'] Wert nicht "festgelegt" wurde, bzw nicht stimmt).
Referenzmaterial PHP: Kontroll-Strukturen - Manual http://xhtmlforum.de/46488-navi-incl...t-ihr-das.html apache friends - apache, mysql, php und perl installation leicht gemacht Webdesign Forum - Tutorial Cinema4d Photoshop Community Hilfe PHP HTML CSS Fotografie Anmerkung: Ich erhebe keinen Anspruch darauf, die perfekte Lösung gewählt zu haben! Es gibt viele Lösung, der hier gezeigte Code ist lediglich beispielhaft und soll Anreize für eigene Ideen geben. Hier soll lediglich das Grundverständnis vermittelt werden! Geändert von ArcVieh (15.02.2008 um 10:30 Uhr) Grund: Einmal komplett überarbeitet; Verständlichkeit gesteigert, Fehler korrigiert. |
Sponsored Links |
Sponsored Links |
|
||||
![]() Zitat:
Wie meinst du das? Wer öffnet die Datei bei jedem Aufruf? Mario |
|
||||
![]() PHP-Code:
Code:
lstat64("/tmp", {st_mode=S_IFDIR|S_ISVTX|0777, st_size=7368, ...}) = 0 lstat64("/tmp/a.php", {st_mode=S_IFREG|0644, st_size=6, ...}) = 0 open("/tmp/a.php", O_RDONLY) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=6, ...}) = 0 fstat64(3, {st_mode=S_IFREG|0644, st_size=6, ...}) = 0 lstat64("/tmp", {st_mode=S_IFDIR|S_ISVTX|0777, st_size=7368, ...}) = 0 lstat64("/tmp/a.php", {st_mode=S_IFREG|0644, st_size=6, ...}) = 0 open("/tmp/a.php", O_RDONLY) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=6, ...}) = 0 fstat64(3, {st_mode=S_IFREG|0644, st_size=6, ...}) = 0 Geändert von loci (23.07.2007 um 08:40 Uhr) |
|
||||
![]()
Weißt du überhaupt was dieser Auszug genau bedeutet? Zudem würde das von dir beschriebene Skript bereits nach dem ersten „require_once“ abbrechen, da „!"./a.php"“ ein „false“ ergibt.
__________________
Markus Wulftange |
|
||||
![]()
Schön, dass du den Beitrag von Ilia auch gefunden hast.
Deine Antwort ist allerdings weniger hilfreich... Der Auszug macht (2 mal): - Lese Dateiinformation in Speicher - Öffne Dateistream (readonly) - Lese Dateiinformationen aus geöffnetem Stream in Speicher Spielt aber egtl. überhaupt keine Rolle was es macht. Das sind die internen Abläufe von php, wenn man oben genanntes Script ausführt und es soll auch nur zeigen, dass eine Datei bei require_once jedes Mal geöffnet wird. Irgendwelche _sinnvollen_ Anmerkungen dazu? |
|
||||
![]()
Bei solchen Ratschlägen solltest du den Kosten/Nutzen-Faktor nicht außer Acht lassen. Sicher hat die Variante mit eigener Kontrolle einen gewissen Geschwindigkeitsvorteil (nach meinen Versuchen bei absoluten Pfaden 55% und bei relativen Pfaden 70%). Doch das entspricht gerade mal einer Zeitdifferenz von etwa 35 beziehungsweise 60 Mikrosekunden, was in meinen Augen den Aufwand nicht rechtfertigt.
__________________
Markus Wulftange |
|
||||
![]()
Ich finde die Diskussion an dieser Stelle unangebracht. Die Anleitung soll für Anfänger sein und die können mit den Informationen nichts anfangen und werden dadurch eher verunsichert. Performanceoptimierung ist kein Thema für Einsteiger, das könnte man als neues Thema anlegen (ich hab auch durchaus Interesse daran).
Ich finde diese Anleitung von ArcVieh sehr gut und hilfreich ![]() Damit kann man viele Anfängerfragen gut auf einmal "erschlagen" und der Hilfesuchende bekommt eine ausführlichere Anleitung als er im Normalfall in einem Thread erwarten kann (besonders wenn eine Frage schon zum x-ten Mal auftaucht). |
|
|||
![]()
Unabhängig von der obigen Diskussion sage ich einfach mal: Spitze ArcVieh!
Ich würde mir aber wünschen, dass solche für Anfänger wirklich hilfreichen Themen besonders gekennzeichnet werden, wer sonst schade drum. Vielleicht aber auch eine Art "knowledge Base" wie für XHTML und CSS wie es andreas' angesprochen hat. <!-- Ich kenne mich mit dieser Quelle recht gut aus, weil ich sie selbst schon des Öfteren genutzt habe. Aber schaut mal unter "3. Welche Voraussetzungen brauche ich?" und dort dann der zweite Eintrag: "Ihr m üsst euch komplett mit HTML auskennen, [...]", dies finde ich nicht wirklich sinnvoll, denn für PHP ist es zwar sinnvoll sich mir HTML aus zu kennen, aber für Kontrollstrukturen o.ä. benötigt man kein HTML. --> MfG
__________________
Geändert von ct2oo4 (28.10.2007 um 11:45 Uhr) |
Sponsored Links |
|
||||
![]() Zitat:
Auserdem um eine Homepage darzustellen brauch man HTML und was anderes machst du mit PHP nicht. PHP bringt nur "leben" in deine auf HTML / CSS basierenden Seite. Soweit meine Meinung. Gruß Timo P.S. schöner Artiel ArcVieh. Aber ich hab mir überlegt du fängst mit der Frage an "Was ist PHP?" dann solltest du auch ein paar Worte über die Syntax von PHP sagen. Nicht nur die is gleich wie bei VB o.ä. Sonst sehr Gut.
__________________
Um weitere Erklärungen eingeblendet zu bekommen, drücken Sie bitte die Tastenkombination Alt + F4 |
Sponsored Links |
![]() |
Themen-Optionen | |
Ansicht | |
|
|
![]() |
||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
Inhalte (z.B. Navigation) auslagern ohne JavaScript und mit .html Dateien | Garlandt | (X)HTML | 5 | 18.07.2014 18:42 |
? zum einem älteren Beitrag (Dateien auslagern, Include) | Stefan G. | Serveradministration und serverseitige Scripte | 9 | 30.12.2007 18:25 |
Include PHP Hilfe | DK | (X)HTML | 19 | 15.03.2005 14:42 |
XHTML 1.1 valid, mit php include, aber *.html, geht das ? | websitedesigner | (X)HTML | 9 | 06.12.2004 16:45 |
Include mit PHP und SSI | Knuddelkamel | Serveradministration und serverseitige Scripte | 13 | 06.11.2004 20:53 |