Christoph: Probleme mit einem Gästebuchskript

Hi @ all.
Ich betreue eine Website, die in PHP geschrieben ist. Das Ganze basiert auf einem Frame und die die einzelnen Seiteninhalte werden als .inc Dateien gespeichert.

Zur Problembeschreibung:

Ich benutze ein PHP Skript für ein Gästebuch, was die Einträge über ein MsSQL Datenbank verwaltet. Wenn ich dort einen neuen Eintrag erstellen will, öffnet sich die Indexseite und es wird nichts eingetragen.

Meine Lösungsansätze:
Ich habe das Skript als eigene PHP/phtml Datei abgespeichert und es ging,
was mich auf einen neuen Quelltext brachte:
"<?php include ('gb.php');?>" , was aber auch keinen Effekt brachte.

Ich hoffe, es ist nur ein kleiner Fehler, weil die übernommen Einträge aus der DB angezeigt werden und deswegen mit beim Zugang kein Fehler vorliegen sollte. Das Skript ansich sollte auch in Ordnung sein, weil es ja als eigenständige Datei einwandfrei funktioniert.

In Vorraus schon mal vielen Dank für die Hilfe

Christoph

  1. Lieber Christoph,

    eine Website, die in PHP geschrieben ist. Das Ganze basiert auf einem Frame

    was ein großer Mist. Wenn Du PHP nutzt, wofür um Himmels Willen brauchst Du denn dann noch Frames??

    was mich auf einen neuen Quelltext brachte:
    "<?php include ('gb.php');?>" , was aber auch keinen Effekt brachte.

    In welchem Kontext steht dieser Code?

    Du kannst Dir ja mal ansehen, wie ich in meinem Gästebuch das Einbinden des eigentlichen Scripts handhabe. Vielleicht hilft Dir das weiter?

    Liebe Grüße aus Ellwangen,

    Felix Riesterer.

    --
    ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
    1. Danke für die schnelle Antwort.
      Ja, das mit dem Frame könnte echt Mist sein, ich wusste aber grade nicht, wie mans genau nennt.

      Der Code steht in der .inc Datei, die geladen wird und das include ('gb.php') bezieht sich auf die im ersten Beitrag erwähnte php Datei.
      Es wird auch wieder alles korekt angezeigt, aber nicht ausgeführt.

      Zu deinem Gästebuch: Das mit dem inkludieren versuche ich ja auch, nur läufts nicht, obwohl das skript ansich lauffähig ist.

      Gruß
      Christoph

      1. Hi,

        Das mit dem inkludieren versuche ich ja auch, nur läufts nicht, obwohl das skript ansich lauffähig ist.

        z. B.: deinscript.php
        <?php
        // dein Code
        include "gb.php";
        ?>

        wie denn auch ?

        um einen neuen Eintrag ins Gästebuch zu machen
        wird z.B. gb.php?aktion=neueintrag aufgerufen

        wenn du das so einbindest werden doch gar keine Parameter an
        gb.php übergeben
        das kann so nicht funzen

        Gruß Udo

        1. wenn du das so einbindest werden doch gar keine Parameter an
          gb.php übergeben
          das kann so nicht funzen

          Das ist falsch. Mit include wird ja nicht ein anderes Skript ausgeführt, sondern eine beliebige Datei so eingebunden, als stände sie in dem Skript, aus dem es inkludiert wird. Demnach hat gb.php sehr wohl Zugriff auf die GET-Parameter.

          mfg
          Rato

          --
          §§§
          Meine Postings basieren lediglich auf mein Wissen und können völliger Blödsinn sein.
          §§§
          1. Hallo,

            Das ist falsch. Mit include wird ja nicht ein anderes Skript ausgeführt, sondern eine beliebige Datei so eingebunden, als stände sie in dem Skript, aus dem es inkludiert wird. Demnach hat gb.php sehr wohl Zugriff auf die GET-Parameter.

            ja du hast recht
            aber wenn das gb Script nicht mit $_SERVER['PHP_SELF'] arbeitet
            passen die Links nicht mehr

            Gruß Udo

            1. Lieber Udo,

              aber wenn das gb Script nicht mit $_SERVER['PHP_SELF'] arbeitet

              was ist denn das wieder für ein Märchen??? Mein GB-Script braucht auch kein PHP_SELF und kann trotzdem überall dort eingebunden werden, wo man es haben will.

              Liebe Grüße aus Ellwangen,

              Felix Riesterer.

              --
              ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
              1. Ich finde es ja schön, hier eine rege Diskusion angeregt zu haben.
                Felix, danke für den Link, aber ich habe bereits ein GB. Und mir wären Diskussionen über Lösungsansätze lieber, als welche über den Sinn von Variablen. Da das Skript als eigenständige Variable schon lauffähig ist, denke ich, dass es wohl nicht daran liegt, dass der Server nicht weiß, wo das Ganze auszuführen ist.
                Aber trotzdem Danke für die Antworten

              2. Hi,

                Mein GB-Script braucht auch kein PHP_SELF und kann trotzdem überall dort eingebunden werden, wo man es haben will.
                abgesehen davon, dass Dein Server das ZIP gerade nicht ausliefern will und ich daher dazu nichts konkreres sagen kann, braucht man gegen SPAM weder eine Zwangsvorschau noch Sesions.

                freundliche Grüße
                Ingo

                1. Lieber Ingo,

                  abgesehen davon, dass Dein Server das ZIP gerade nicht ausliefern will

                  hmm... Also eben gerade kam der Download-Dialog in meinem Browser.

                  braucht man gegen SPAM weder eine Zwangsvorschau noch Sesions.

                  Sondern?

                  Mit der Session fange ich die Bots ab, die nicht von meinem originalen Formular kommen, sondern sich mein Formular irgendwie geholt oder nachgebildet haben. Und die erste Zwangsvorschau tut vor allem jenen gut, die niemals ihr eben Geschriebenes korrekturlesen, und einfach gestrickte Bots weißt sie auch ab.

                  Was machst Du denn anders?

                  Liebe Grüße aus Ellwangen,

                  Felix Riesterer.

                  --
                  ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
                  1. Hi,

                    braucht man gegen SPAM weder eine Zwangsvorschau noch Sesions.

                    Sondern?

                    Dir ist dieser Thread noch nicht aufgefallen?

                    Mit der Session fange ich die Bots ab, die nicht von meinem originalen Formular kommen, sondern sich mein Formular irgendwie geholt oder nachgebildet haben.

                    das lohnt sich nahezu gar nicht, weil das - zumindest auf meinem Gästebuch - unter 1% sind. Und diese wenigen treten in nahezu alle Fettnäpfchen, die man ihnen vorsetzt. Z.B. erfüllt mein hidden Datumsfeld auch genau diesen Zweck.

                    Und die erste Zwangsvorschau tut vor allem jenen gut, die niemals ihr eben Geschriebenes korrekturlesen, und einfach gestrickte Bots weißt sie auch ab.

                    nicht nur einfach gestrickte (das wären die, die Du über die Session erwischt), sondern vermutlich alle. Aber dennoch ist mir ein fehlerhafter Eintrag im Gästebuch (der ja ggfls. noch korrigiert werden kann) lieber, als wegen Zwangsvorschau nicht abgeschickter.
                    Wobei ich zugeben muss, dass mein erster Gedanke beim Spamschutz für mein Gästebuch ebenfalls eine Zwangsvorschau war.

                    freundliche Grüße
                    Ingo

        2. Hi,

          Das mit dem inkludieren versuche ich ja auch, nur läufts nicht, obwohl das skript ansich lauffähig ist.

          z. B.: deinscript.php
          <?php
          // dein Code
          include "gb.php";
          ?>

          wie denn auch ?

          um einen neuen Eintrag ins Gästebuch zu machen
          wird z.B. gb.php?aktion=neueintrag aufgerufen

          wenn du das so einbindest werden doch gar keine Parameter an
          gb.php übergeben
          das kann so nicht funzen

          Gruß Udo

          Ja, das klingt vernünftig. Leider bin ich aber eher PHP Anfänger. Gibt es eine Möglichkleit das Ganze einfach zu ändern, oder muss ich dem Gästebuch ne eigene Seite schreiben und darauf verlinken? Leider ist es ja nicht möglich einfach den Skriptcode in die .inc Datei zu bauen.

          1. Ja, das klingt vernünftig.

            Ist aber völliger Schwachsinn. Siehe auch mein anderes Posting.

            Gibt es eine Möglichkleit das Ganze einfach zu ändern,

            _Was_ willst du ändern?

            oder muss ich dem Gästebuch ne eigene Seite schreiben und darauf verlinken?

            Nein

            Leider ist es ja nicht möglich einfach den Skriptcode in die .inc Datei zu bauen.

            Wieso denn nicht?

            mfg
            Rato

            --
            §§§
            Meine Postings basieren lediglich auf mein Wissen und können völliger Blödsinn sein.
            §§§