Kann ich PHP in einer externen Datei speichern und die Funktionen dieser PHP datei in einem HTMl document benützen?
PHP in HTML
-
minder -
11. März 2008 um 09:01
-
-
Nicht ganz, in HTML Dateien kannst du kein PHP verwenden - dafür in PHP Dateien HTML.
Ändere also die HTML Datei in eine PHP Datei und mach einfach ein include auf die Funktionsdatei. -
-
Ich hab ein sehr kleine CMS gefunden, es benützt MySQL Tabellen um den Inhalt der Seite anzuzeigen. Kann ich Dazu auch Textdateien verwenden??
-
Wenn es das CMS anbietet, dann kannst du das. Das ist aber sehr wahrscheinlich nicht der Fall, da sich Textdateien für eine seriöse Datenbank nicht eignen. Schreib entweder selber was, such was mit Textdateien (wird wohl schwer), oder besorg dir eine MySQL DB..
-
Hier ist mal mein CMS. Was muss ich anpassen damit ich die Ersetzungen im Template mit Text dateien machen kann?
-
Hehe, ich les mir das jetzt nicht alles durch
aber ich kann dir sagen, dass du das halbe CMS neuschreiben müsstest, denn ein DB CMS arbeitet nun mal mit (My)SQL und nicht mit irgendwelchen Dateioperationen.
Wenn dir das nichst sagt: es ist einfach komplett anders aufgebaut. Auch wenn die DB Logik schön vom Rest getrennt wäre, wäre der Aufwand, das umzuschreiben, in etwa soviel wie ein neues (kleines) CMS.Das wäre wie wenn du den Dieselmotor eines Fahrzeugs mit einem Elektromotor ersetzen möchtest, da kann man nicht nur rein den Motor auswechseln.
-
Denoch danke für die Hilfe
-
Wenn ich ein Templat (.html) mit Platzhaltern habe, wie muss der PHP script aussehen, dass er aus einer Textdatei die Platzhalter füllt?
-
-
-
weil du nur ne if-abfrage hast.
was du brauchst is ne while-schleife...außerdem musst die datei erst NACH der schleife closen.
-
danke
-
Auf meiner Seite solls ne Box haben, in der entweder das Loginforumular angezeigt wird oder wenn man eingelogt ist soll der Name desjenigen angezeigt werden. Es soll ausserdem eine Session gestartet werden.
PHP
Alles anzeigen<?php if() } else { echo (" <form action='session_check.php' method='POST'> <table> <tr> <td>Benutzername:</td> <td><input type='text' name='benutzer'></td> </tr> <tr> <td>Passwort:</td> <td><input type='password' name='password'></td> </tr> <tr> <td> </td> <td><input type='submit' value=' OK '></td> </tr> </table> </form> "); } ?>
-
Naja wenn du nicht weiter kommst als das, würd ichs mit einem CMS versuchen..
1. Ist ein Userlogin auf Textdateien basierend suboptimal (vor allem wegen Sicherheit & Komfort)
2. Systeme mit Textdateien mühsam zum programmieren sind
3. Hat wohl niemand Lust dir ein Login zu schreiben (mit Textdateien), da das eine mühsame Arbeit istVielleicht hast du auch Glück
-
Ich versuche so was wie ein CMS zu machen. Zwar nur ein ganz billiges. Weil ich kein MySQL verwenden kann, hab ich mir überlegt ich könnte eben die Text in Textdateien schreiben. Auf dem Template wird dann eine Funktion eingebunden die die Text lät. Durch den Anklich von einem Link wird eine Variable mit dem Link zur Textdatei gesendet und so kann der Text angezeigt werden. Nur ein Problem, wie lande ich die erste Seite (Home oder Index)?
-
Könntest z.B. in der index Datei eine Paramter Abfrage haben.
Also sowas wie:Code
Alles anzeigen// Array für alle Seiten die du hast // dient zur Sicherheit, dass nur die Seiten aufgerufen werden können, // die du hier einträgst $pages = array('home', 'login'); // Falls die aufgerufene Seite (z.B. /index.php?page=home) // im oberen Array vorkommt -> Variable abfüllen mit der Seite, // die aufgerufen wurde if (in_array($_GET['page'], $pages)) { $page = $_GET['page']; } // wenn nicht -> Home Seite laden // wird auch passieren wenn jemand frisch auf die Seite kommt, // da $_GET noch keinen Parameter hat. else { $page = 'home'; } // hier die Seite $page laden, je nachdem wie du das halt machst
Hoffe das hilft weiter.
-
Also wenn ich z.b. ein Hauptmenue habe und da nochmal ein Menu muss ich alle Seiten auch aus dem 2 menue angeben?
-
Einfach alle Seiten, für die du dann der Inhalt aus einer Textdatei lesen willst.
Wenn es ganz viele sind, würd ich das anders machen. Wenn es nur ein paar sind, sollte mein Beispiel reichen. -
Danke
-