niCo: Variablen "rüberschaffen"

Hi,

durch input() verwende ich ein phpscript, welchen nur dann verwendet wird wenn eine bestimmt aktion passiert.
Nun trägt er in diesem skript etwas in eine Datenbank ein, und legt somit gleich die ID fest.
Jetzt ist es kein problem in diesem skript die ID zu kriegen, doch ich bräuchte die ID in dem skript, wo der input() befehl drinne steht...

Kann man dieses irgendwie bewerkstelligen, also die Variable sozusagen "rüberschaffen"???

danke schonmal :)
mFg niCo

  1. Hello,

    Kann man dieses irgendwie bewerkstelligen, also die Variable sozusagen "rüberschaffen"???

    Uiui, das hört sich aber nach einem gefährlichen Sicherheitsloch für Dein System an...

    Wer ist "er"? Ist es der User, der etwas einträgt, oder ist es der Prozess, der den Request bearbeitet? Wird das Folgescript von einem ersten Script aufgerufen, oder vom Browser?

    Du solltest den Vorgang um

    Formular im Browser
      Request auslösen
      Request empfangen und abarbeiten
      Response senden
      Response auswerten und neues Formular im Browser anzeigen

    mal etwas genauer betrachten.

    Mach Dir kleine Zetellchen und schreib drauf, was passiert.
    Sie gehören entweder in das Fach "Server", das Fach "Transmission" oder das Fach "Client".
    Versuche also immer, genau zu trennen.

    Speichern kannst Du die Daten in der Praxis auf dem Server. Dazu benutze man eine Session und den über sie ermittelbarewn Speicherbereich für den Client.

    Harzliche Grüße vom Berg
    http://www.annerschbarrich.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
    Nur selber lernen macht schlau

  2. durch input() verwende ich ein phpscript, welchen nur dann verwendet wird wenn eine bestimmt aktion passiert. Nun trägt er in diesem skript etwas in eine Datenbank ein, und legt somit gleich die ID fest.

    Du hast also ein HTML-Formular, in das der User Daten eingibt, die ein PHP-Script erhält und in eine DB schreibt, richtig? Die Tabellenspalte ID hat das Attribut auto_increment, sodass du keinen Einfluss auf den Wert der ID hast, da er von der DB vergeben wird, richtig?

    Jetzt ist es kein problem in diesem skript die ID zu kriegen, doch ich bräuchte die ID in dem skript, wo der input() befehl drinne steht...

    Du hast also zwei PHP-Skripte, eines, welches das Formular erzeugt, und eines, welches das Formular verarbeitet, richtig? Letzteres soll eine HTML-Seite ausgeben, auf der in irgendeiner Weise die ID des zuletzt eingetragenen Datensatzes präsentiert werden soll, richtig? Dann mache eine DB-Abfrage nach diesem Datensatz, damit hast du doch deine ID.

    Ansonsten könnte das Stichwort "Affenformular" für dich interessant sein, also ein Script, das sowohl das Formular erzeugt als auch die Daten verarbeitet. Du musst dazu eine Fallunterscheidung zwischen erstem Aufruf und Aufruf zur Datenverarbeitung machen.

    Siechfred

    --
    Ich bin strenggenommen auch nur interessierter Laie. (molily)
  3. Tach.

    durch input() verwende ich ein phpscript, welchen nur dann verwendet wird wenn eine bestimmt aktion passiert.

    Du meinst include()?

    Nun trägt er in diesem skript etwas in eine Datenbank ein, und legt somit gleich die ID fest.
    Jetzt ist es kein problem in diesem skript die ID zu kriegen, doch ich bräuchte die ID in dem skript, wo der input() befehl drinne steht...

    Du könntest [1] Teile deines Skriptes in Funktionen kapseln. Jede dieser Funktionen kann als Ergebnis einen Wert an den Aufrufer zurückgeben; beispielsweise eine ID.

    [1] Vermutlich *solltest* du sogar. Durch solche Maßnahmen schlägst du gleich mehrere Fliegen mit einer Klappe: dein Quelltext ist strukturierter; du kannst Code wiederverwenden; du vermeidest Probleme wie Namespace-Kollisionen oder Skriptteile, die im falschen Kontext ausgeführt werden, wenn z. B. jemand die ausgelagterten Teile direkt aufruft.

    --
    Once is a mistake, twice is jazz.