Brauche Hilfe für eine kleine PHP-Anwendung

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Brauche Hilfe für eine kleine PHP-Anwendung

    Ich brauche Hilfe bei einer PHP-Anwendung.

    Ich möchte eine einzelne HTML/PHP-Seite per Frontend mit Daten aktualisieren. Also ein simples 1-Seiten-CMS, welches lediglich vorher definierte Zahlen und Wörter einer Internetseite ständig per Hand aktualisieren kann.

    Man stelle sich einfach vor es gibt eine HTML-Seite mit diversem Text. Einige der Wörter sind jedoch nicht fest in den HTML-Quellcode geschrieben, sondern lesen sich per PHP-Befehl selbst aus einer TXT-Datei ein. Diese TXT-Datei soll über ein simples 1-Seiten-Formular-Skript aktualisierbar sein.

    Letztlich geht es darum, dass bei einer Textaktualisierung nicht immer der gesamte Quellcode durchwühlt und per FTP hochgeladen werden muss, sondern vorher definierte Bereiche auf diesem Weg schnell und komfortabel aktualisiert wird.

    Wie man über ein Formular Variablen in eine txt-datei abspeichert habe ich inzwischen verstanden. Auch wie man aus einer txt-Datei Variablen dann in die tatsächliche Internetseite importiert.

    Und genau hier liegt das Problem.

    Alle Beschreibungen aus dem Internet, welche ich bisher gefunden habe befassen sich mit dem Einen oder dem Anderen Thema. Werden Daten in eine TXT-Datei gespeichert, dann immer die "eingegebenen" Daten. Ich benötige in meiner Logik jedoch die Variable selbst, denn schließlich soll diese ja wieder ausgelesen werden, duch die andere Internetseite.

    Ich kann inzwischen über ein simples HTML/PHP-Formular Daten in die TXT abspeichern. Leider nicht als Variablen also mit einem $-Zeichen. Dies benötige ich jedoch um die exakte Variable anzusprechen um sie mit der Internetseite zu verbinden. Ich werd noch verrückt.

    Ich hab auch nicht vor mich so tief mit PHP zu beschäftigen.

    Kann mir jemand helfen?

  • #2
    Ich hab auch nicht vor mich so tief mit PHP zu beschäftigen.
    Wenn du willst, dass dir das jemand codet, dann sag Bescheid. Ich verschiebe es dann zur Projekthilfe.

    Peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      Man stelle sich einfach vor es gibt eine HTML-Seite mit diversem Text. Einige der Wörter sind jedoch nicht fest in den HTML-Quellcode geschrieben, sondern lesen sich per PHP-Befehl selbst aus einer TXT-Datei ein. Diese TXT-Datei soll über ein simples 1-Seiten-Formular-Skript aktualisierbar sein.
      Also ich würde sowas über eine XML-Datei machen mit XMLReader der ist auch noch relativ schnell. Auch ist er einfach zu verstehen

      XML-Reader Doku

      Ich hab hier ne extra Classe geschrieben(welche noch überarbeitet werden muss) da gibst einfach nur die Datei an und der speichert dir alle werte über nen Array in eine Variabel.

      So kannst dann den Text zb. über smarty ausgeben und bestimmte Textstellen sind dann immer variabel, auch kannst so ne schnittstelle zwischen englisch und deutsch machen =)

      lg
      gruschi

      Kommentar


      • #4
        Hier braucht's in jedem Fall mehr Informationen.

        Einige der Wörter sind jedoch nicht fest in den HTML-Quellcode geschrieben, sondern lesen sich per PHP-Befehl selbst aus einer TXT-Datei ein.
        ...ist doch arg vage. Und das Thema ist unter Umständen nicht wirklich trivial.

        Können die möglichen Werte mehrzeilig sein? Enthalten sie HTML-Code? Soll die Anzahl der zu setzenden Variablen variabel sein? Usw.

        XML ist vermutlich generell eine gute Idee.

        Code:
        <var name="foo"><![CDATA[<h1>Eine Überschrift</h1>]]></var>

        Kommentar


        • #5
          Ich bin ja begeistert, dass es hier so rege zugeht.

          Im Anhang habe ich einmal ein Bild-Schema skizziert.

          Es geht tatsächlich nur darum Wörter und Zahlen zu ändern. Kein Layout, kein Quellcode. Nur Wörter und Zahlen - wie in dem grafischen Beispiel "Hänsel" usw.

          Der Sinn ist halt in einem sehr langem Text nicht jedes Mal in den Quellcode zu müssen um fest definierte Variablen-Wörter zu verändern.

          Ich möchte es auch so simpel und naiv wie möglich halten. Damit soll kein Preis gewonnen werden.

          Ich möchte es per PHP haben, auch wenn XML oder anderweitige Umsetzung vielleicht auch in Frage kommt.

          Die Skizze im Anhang ist ein Beispiel! Bitte keine Hinweise, dass Dinge fehlen.

          Ich hoffe ich konnte das per Skizze nun bildlich rüberbringen.

          Könnte mir jemand vielleicht ein idiotensicheres Template schreiben?
          Angehängte Dateien

          Kommentar


          • #6
            Ich würde var_export() mit require_once kombinieren. Das reicht für diesen Zweck.

            Kommentar


            • #7
              Zitat von Kropff Beitrag anzeigen
              Wenn du willst, dass dir das jemand codet, dann sag Bescheid. Ich verschiebe es dann zur Projekthilfe.

              Peter
              Sehr gern. Ein template mit Kommentaren wäre sehr hilfreich. Ich kann am Besten nach dem revers engineering Prinzip arbeiten.

              Kommentar


              • #8
                und * verschieb *

                peter
                Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                Meine Seite

                Kommentar


                • #9
                  PHP-Code:
                  <?php // form.php

                  // defaults
                  $foo $bar '';

                  require_once 
                  'vars.php';

                  //...
                  echo '<form action="save.php">';
                  echo 
                  '<input name="foo" value="'.$foo.'" />';
                  //...
                  PHP-Code:
                  <?php // save.php

                  // $_POST prüfen, ggf. zurück zu form.php
                  // unerwünschte Werte aus $_POST entfernen

                  file_put_contents('vars.php''<?php extract('.var_export($_POSTtrue).');');

                  // Erfolgsmeldung oder sonstwas
                  Bei der Webseite läuft es analog zu form.php.

                  Kommentar


                  • #10
                    Ach du meine Güte,

                    das versteh ich nur teils.

                    Mich verwundert, dass ich keinerlei Code wie:

                    $fp = fOpen($file,"w+");

                    finde. Bisher waren in allen Templates und Beispielen und Erklärungen aus dem Internet das Prinzip mit Datei öffnen, schreiben, schließen beschrieben. Ist das garnicht notwendig?

                    Wie man sieht bin ich kein PHP-Kenner.

                    Kommentar


                    • #11
                      Zitat von WalleBremer Beitrag anzeigen
                      Mich verwundert, dass ich keinerlei Code wie:

                      $fp = fOpen($file,"w+");

                      finde.
                      Ja was findest du denn stattdessen ...?

                      file_put_contents - was könnten die einzelnen Bestandteile dieses Funktionsnamens denn wohl auf Deutsch heissen?
                      Und was macht sie wohl ...? -> Manual nehmen, nachlesen!
                      I don't believe in rebirth. Actually, I never did in my whole lives.

                      Kommentar


                      • #12
                        Ich bitte um Entschuldigung. Ich bin Autist und habe Probleme mit fremden Sprachen.

                        Daher bitte ich ja hier um Hilfe.

                        Ich versuche immer existierende fertige Dinge rückwirkend zu analysieren. Das klappt sehr gut. Jedoch kann ich mich über solche Dinge in einem fortlaufenden Prozess nicht unterhalten. Ich verstehe es einfach nicht.

                        HTML habe ich mir beigebracht indem ich tausende Seiten analysiert habe. Dinge die immer wieder auftauchen, müssen also immer vorhanden sein und bilden anscheiende das Gerüst. Wenn ich etwas mit HTML herstelle, dann nutze ich Bausteine aus vielen Seiten, die ich abgespeichert habe.

                        Ich kann aber keinen Code von Grund auf bauen. Das schaffe ich nicht.

                        Kommentar


                        • #13
                          Hi,

                          das Manual gibt es auch auf Deutsch. Wenn Dir eine Funktion unbekannt ist, kannst Du den Funktionsnamen einfach in das Suchfeld oben rechts (hinter "search for") eintragen und bekommst dann die Seite, auf der die Funktion genau beschrieben ist. Es sind auch fast überall Beispiele dabei, die Du ausprobieren kannst. Vielleicht hilft Dir das weiter.

                          LG

                          Kommentar


                          • #14
                            Zitat von WalleBremer Beitrag anzeigen
                            HTML habe ich mir beigebracht indem ich tausende Seiten analysiert habe. Dinge die immer wieder auftauchen, müssen also immer vorhanden sein und bilden anscheiende das Gerüst. Wenn ich etwas mit HTML herstelle, dann nutze ich Bausteine aus vielen Seiten, die ich abgespeichert habe.
                            Du hättest dir auch einfach den HTML-Standard durchlesen können. Dort steht explizit drin, welche Teile das Gerüst sind und deshalb immer vorhanden sein müssen. Außerdem steht da auch wie Browser bestimmte Dinge darstellen sollen und was überhaupt möglich ist und und und.

                            Für PHP gibt es kein Grundgerüst und auch keinen Standard. Kannst aufhören danach zu suchen!
                            Es gibt zwar Muster (Stichworte hierzu sind z.B. EVA, Bootstrapping, MVC), aber die stehen auf einer ganz anderen Ebene, die erst zugänglich wird, wenn man PHP an sich versteht.
                            Es ist absolut unfruchtbar nach Vorkommen von fopen() zu suchen. Daraus kann man nichts ableiten und so wirst du niemals auch nur ansatzweise etwas lernen.
                            Kauf dir lieber ein Anfängerbuch und übe anhand der Beispiele darin.

                            Kommentar


                            • #15
                              Also, mein Formular sieht so aus:
                              PHP-Code:
                              <html> 
                              <head> 
                              </head> 
                              <body> 
                              <form name="form" action="save.php" method="post"> 
                              <?php 
                              include('vars.php'); 
                              echo 
                              "<input name=\"var1\" value=\"$var1\">"
                              echo 
                              "<input name=\"var2\" value=\"$var2\">"
                              echo 
                              "<input name=\"var3\" value=\"$var3\">"
                              ?> 
                              <input type="submit" value="speichern"> 
                              </form> 
                              </body> 
                              </html>
                              Meine save.php sieht dann so aus:

                              PHP-Code:
                              <?php
                              $fp
                              =fopen("vars.php","w");
                              fwrite($fp,'<?php'."\n"); 
                              fwrite($fp,'$var1 = "var1";'."\n"); 
                              fwrite($fp,'$var2 = "var2";'."\n"); 
                              fwrite($fp,'$var3 = "var3";'."\n"); 
                              fclose($fp);
                              echo 
                              $var1;
                              echo 
                              $var2
                              echo 
                              $var3
                              ?>
                              Die Datei, in der Variablen abgespeichert werden heißt: vars.php
                              Von mir vorkonstruiert!

                              PHP-Code:
                              <?php 
                              $var1 
                              "Wald"
                              $var2 "Hänsel"
                              $var3 "Gretel" 
                              ?>
                              Das Formular lädt aus der vars.php die Wörter in die richtigen Formulartextfelder in die form.php. Wenn ich sie ändere und dann abspeichern will wird jedoch in die vars.php anstelle der Wörter folgendes geschrieben:

                              PHP-Code:
                              <?php
                              $var1 
                              "var1";
                              $var2 "var2";
                              $var3 "var3";
                              wie erkläre ich nun der save.php, dass die eingegebenen Wörter gespeichert werden sollen?

                              Kann mir bitte jemand die Lösung gleich als Quellcode anhängen?!

                              Kommentar

                              Lädt...
                              X