tutorials.de Buch-Aktion 05/2012
Seite 1 von 3 123 LetzteLetzte
ERLEDIGT
NEIN
ANTWORTEN
33
ZUGRIFFE
919
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    gulo92 gulo92 ist offline Mitglied Silber
    Registriert seit
    Sep 2011
    Beiträge
    55
    Hallo,

    ich steh gerade auf dem Schlauch und frage mich, wie es möglich wäre, automatisch aus neu hinzugefügten Daten in einer mySQL Datenbank, statische HTML Seiten, also mit festen Inhalten zu erstellen. Also ich füge einen neuen Datensatz in meiner MySQL Tabelle hinzu und es wird automatisch eine Datei z.B. .../neuer-datensatz-1.html erstellt, in der alle neuen Daten "für immer" gespeichert sind und nicht jedesmal neu aus der Datenbank geholt werden müssen. Ich weiß, schwer zu beschreiben. Auf jeden Fall suche ich da einen Ansatz oder einen Begriff wonach ich googlen könnte...

    Danke euch!
     

  2. #2
    Avatar von sheel
    sheel sheel ist gerade online Moderator
    tutorials.de Moderator
    Registriert seit
    Jul 2007
    Beiträge
    4.506
    Hi

    Mach einen Cronjob (etwas, was regelmäßig ausgeführt wird, zB. jede Minute),
    lies im dazugehörenden PHP-Skript alle neuen Datensätze aus
    (erkennbar zB. an der ID, doer Timestamp, oder...je nach DB unterschiedlich)
    und erstell mit PHP passende Dateien.


    Oder willst du vllt., dass:
    Der Benutzer diese HTMl-Dateien aufrufen kann, aber sie in Wirklichkeit doch aus der DB kommen
    (und es nur im Browser so ausschaut, als wären es echte Dateien)?
    Für sowas: ModRewrite.

    Gruß
     
    Netiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
    Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
    "Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?

  3. #3
    Joe Joe ist offline Mitglied Brokat
    Registriert seit
    Aug 2009
    Ort
    Thüringen
    Beiträge
    339
    Also ich füge einen neuen Datensatz in meiner MySQL Tabelle hinzu und es wird automatisch eine Datei z.B. .../neuer-datensatz-1.html erstellt, in der alle neuen Daten "für immer" gespeichert sind und nicht jedesmal neu aus der Datenbank geholt werden müssen.
    Wieso sollte man .html-Dateien in einer Datenbank speichern anstatt auf dem Server?
    Was meint
    nicht jedesmal neu aus der Datenbank geholt werden
    ?
    Datenbanken machen nur Sinn wenn man sie benutzt um die darin gelagerten Daten wieder zu verwenden. Das wäre ja als würdest du dir was auf einen Zettel schreiben damit du es nicht vergisst und legst den Zettel für immer weg.

    Ich frag nur mal nach weil so richtig hab ich nicht vertsanden was du vorhast.

    Gruss Joe.
     

  4. #4
    gulo92 gulo92 ist offline Mitglied Silber
    Registriert seit
    Sep 2011
    Beiträge
    55
    Danke erstmal!
    Nein ich möchte halt aus Performancegründen und zur Archivierung immer neue HTML Dateien erstellen, sobald ein neuer Datensatz hinzugefügt wird. Kann man das irgendwie so machen, dass man alles in einer Variable speichert, dann mit fopen() eine neue Datei erstellt und die Variable dann in diese Datei schreibt und in nem 777 Ordner speichert. Wie müsste man sowas coden? Hat da jemand nen Script?

    Beste Grüße
    Paul
     

  5. #5
    Avatar von sheel
    sheel sheel ist gerade online Moderator
    tutorials.de Moderator
    Registriert seit
    Jul 2007
    Beiträge
    4.506
    Ob da die Datei messbar schneller ist als die DB...nicht sicher.
    Würde mich auch gar nicht wundern, wenn (nicht in jedem Fall,
    aber durchschnittlich) die DB schneller ist.

    Und jetzt versteh ich das auch so, dass du komplette HTMLs in der DB hast.
    Warum? Der Aufbau etc. wird doch immer gleich sein, oder?
    Oder falsch verstanden?

    Und ein Verzeichnis mit 777-Rechten ist nicht so ideal.
    Warum soll jeder alles dürfen?
    Wenns ein Webserver ist, muss in den meisten Fällen nur root/Apache(+PHP) dran.

    edit: Zur Archvierung kannst du doch auch Backups von der DB machen...
     
    Netiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
    Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
    "Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?

  6. #6
    gulo92 gulo92 ist offline Mitglied Silber
    Registriert seit
    Sep 2011
    Beiträge
    55
    Wie komplette HTMLs in der DB? ja, 777 ist vielleicht zu viel, ich mein nur vom Ansatz her, wie ich es geschrieben habe.
     

  7. #7
    Avatar von sheel
    sheel sheel ist gerade online Moderator
    tutorials.de Moderator
    Registriert seit
    Jul 2007
    Beiträge
    4.506
    Kannst du mal ein Beispiel machen,
    wie ein DB-Eintrag aussieht, und wie das als HTML-Datei dann sein soll?
     
    Netiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
    Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
    "Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?

  8. #8
    Joe Joe ist offline Mitglied Brokat
    Registriert seit
    Aug 2009
    Ort
    Thüringen
    Beiträge
    339
    Verwirrend.
    Also normal ist ein Server via FTP-Upload zum verwalten und archivieren von HTML Dateien (aller möglichen Dateien). Wenn sich der Code (Datensatz ist was andres) ändert überschreibt man mit seinem FTP-Clienten zumeist die ältern Datein. Zu Sicherheitszwecken macht man sich daher Backups und speichert sie wohl eher lokal auf dem Rechner.

    Datenbanken können das sicher auch evtl leisten aber so ist das nicht gedacht. Daher die Frage was das ganze bezweckt? Wie gesagt eine neuere HTML-Datei würde man doch auf dem Server einfach updaten/aktualisieren nach dem man Code hinzufügt.

    (Komm mir grad bissel doof vor ist nur ne ungewöhliche Frage des TE)

    MFG Joe
     

  9. #9
    gulo92 gulo92 ist offline Mitglied Silber
    Registriert seit
    Sep 2011
    Beiträge
    55
    Naja ...: Ein User gibt per Formular 10-15 Werte pro Datensatz ein. Dies wird dann in einer mySQL Tabelle gespeichert. Parallel dazu wäre es notwendig, diese Daten in einer neuen HTML Datei zu schreiben und in einem Ordner zu speichern. Ich weiß schon, dass man das auch einfach per Datenbankabfrage machen könnte. Aber in meinem Fall macht es aus SEO-Sicht so mehr Sinn.
     

  10. #10
    Joe Joe ist offline Mitglied Brokat
    Registriert seit
    Aug 2009
    Ort
    Thüringen
    Beiträge
    339
    Und warum fragt die "HTML"-Datei nicht via PHP die DB ab ob sich was geändert hat und schreibt dann die HTML-Ausgabe entsprechend so wie es angezeigt werden soll?
     

  11. #11
    gulo92 gulo92 ist offline Mitglied Silber
    Registriert seit
    Sep 2011
    Beiträge
    55
    Jaaa ... ich merk schon ... so langsam überzeugt ihr mich ... aber die PHP Datei muss ja auch irgendwie automatisch erstellt werden und nen bestimmten Namen etc. haben.. das kann doch sicher irgendwie automatisieren, oder? Nochmal zur Info: Die neuen Werte die immer wieder hinzukommen überschreiben nie alte Datensätze, sondern sind immer separat zu betrachten. Also quasi wie wenn man hier im Forum ein neues Thema aufmacht, wird ja auch eine neue Datei erstellt, die dann die DB Werte ausliest... wie mache ich das?
     

  12. #12
    Joe Joe ist offline Mitglied Brokat
    Registriert seit
    Aug 2009
    Ort
    Thüringen
    Beiträge
    339
    Dann wird diese Datei wohl eine .PHP-Datei werden Die Ausgabe ist aber dennoch HTML und daher SEO. Deine PHP.Datei (INDEX.php ****) müsste dann in <? php> Code Tags die Datenbank auslesen und deine Datensätze aus der DB anzeigen.
    Ich empfehle dir mal ein einfaches Tutorial zu PHP anzuschauen. Und mal nen Hello World zu machen.
    Ich hoffe das kommt nicht unhöflich aber ich habe den Eindruck das es etwas an Grundwissen fehlt. Was gennerell nicht schlimm ist sondern nur verwirrend

    MFG Joe
     

  13. #13
    gulo92 gulo92 ist offline Mitglied Silber
    Registriert seit
    Sep 2011
    Beiträge
    55
    Nein nein, das Grundwissen ist schon da wie ich die Datenbank auslese und so weiß ich doch. Ich überlege nur, wie ich es umsetze, dass ich Formular-Input-Daten, welche ich verarbeite und in der MySQL Datenbank speicher noch weiter verarbeiten kann. Denn ich möchte folgendes: Ich möchte, dass sobald ein neuer Datensatz (Name: Input_001) in der MySQL Tabelle abgelegt wird. Eine Datei namens input_001.php erstellt und auf dem Server abgelegt wird.

    Das ist doch das gleiche wie hier im Forum. Ich lege ein neues Thema an und schon wird eine neue Datei erstellt welche, wie jetzt unter http://www.tutorials.de/php/383220-s...datenbank.html erreichbar ist. Ich möchte wissen, wie ich das umsetze.
     

  14. #14
    Avatar von sheel
    sheel sheel ist gerade online Moderator
    tutorials.de Moderator
    Registriert seit
    Jul 2007
    Beiträge
    4.506
    Da gibts in Wirklichkeit keine Dateien,
    die Uri wird nur umgeschrieben.

    Dein Link schaut in Wirklichkeit so aus:
    http://tutorials.de/forum/showthread.php?t=383220
    Die Nummer ist gleich, daran wird das festgemacht.
    Alle Threads kommen aus dieser einen PHP-Datei.

    Mit ModRewrite kann man die Uri so umändern lassen.
    Joe bedankt sich. 
    Netiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
    Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
    "Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?

  15. #15
    Joe Joe ist offline Mitglied Brokat
    Registriert seit
    Aug 2009
    Ort
    Thüringen
    Beiträge
    339
    So ein Forum als komplexes Werk hat ein Grundgerüst. Es wird geprüft ob ein neuer Eintrag hinzugekommen ist und stellt den neuen Inhalt miittels echo dar. Daz wird aber keine neue Datei erstellt sondern nur der Inhalt wird dynamisch angezeigt. Die Datei ändert absolut nix an ihren Code selber -> es wird also keine neue Datei gebraucht oder aktualisiert. NUR die Datenbankeinträge ändern sich.
     

Ähnliche Themen

  1. MySQL Datenbank erstellen (****)
    Von docma im Forum Content Management Systeme (CMS)
    Antworten: 6
    Letzter Beitrag: 13.08.10, 08:28
  2. Antworten: 6
    Letzter Beitrag: 16.08.07, 10:48
  3. Antworten: 3
    Letzter Beitrag: 19.09.05, 23:28
  4. Antworten: 9
    Letzter Beitrag: 23.05.04, 15:11
  5. PHP/MySQL Datenbank erstellen | Hilfe
    Von LexusTheSecond im Forum PHP
    Antworten: 3
    Letzter Beitrag: 18.03.04, 21:52