übergabe von variablen über 2 seiten
thon
- php
0 Vinzenz Mai0 Thon0 Vinzenz Mai0 thon0 Tom0 Johannes Zeller0 Der Martin
0 Tom
Hallo zusammen,
ich habe folgendes problem
habe eine html seite wo sachen wie "name" und "email"
vom benutzer erfragt werden.
nach deren eingabe geht es auf eine 2. seite (diesmal php) wo die daten nochmal angegeben werden. Nun kann der user mit einem klick auf ok die Daten an die MYSQL datenbank schicken.
Mein problem daran ist das die daten auf der 2. seite angezeigt werden jedoch aber net auf der 3. in die mysql datenbank eingetragen werden.
mit der method=Get seh ich auch das die variablen "name" und "email" einfach nicht weiter geleitet werden (habe dann wieder einen leeren eintrag in der Datenbank)
weiß jemand wie ich die Variablen weiterleiten kann??
mfg thon
Hallo
habe eine html seite wo sachen wie "name" und "email"
vom benutzer erfragt werden.
also mit einem HTML-Formular?
nach deren eingabe geht es auf eine 2. seite (diesmal php) wo die daten nochmal angegeben werden.
Nun kann der user mit einem klick auf ok die Daten an die MYSQL datenbank schicken.
Diese Seite enthält also ebenfalls ein Formular?
Mein problem daran ist das die daten auf der 2. seite angezeigt werden jedoch aber net auf der 3. in die mysql datenbank eingetragen werden.
das wird an Deinem Code liegen. Vermutlich stehen diese Informationen nicht in Formularfeldern.
mit der method=Get seh ich auch das die variablen "name" und "email" einfach nicht weiter geleitet werden (habe dann wieder einen leeren eintrag in der Datenbank)
Ich vermute, Dir könnte das Affenformular weiterhelfen. Mehr will meine Glaskugel derzeit nicht herausrücken.
Freundliche Grüße
Vinzenz
Danke für deine antwort
also die 2. Seite ist nur zur überprüfung der Daten da
dort kann der user seine eingaben überprüfen.
ich habe mir dieses affenformular angeuckt... naja irgendwie hilfts mir gar net weiter.
habe mir mitlerweile 1000 seiten angeguckt und habe mal was von html entries oder so gelesen da stand genau das was ich brauchte und dann hat sich mein rechner verabschiedet und ich habe diese seite nie wieder gefunden :(
fals du dir mal das ganze angucken willst
<html>
<head>
<title>Uebung PHP</title>
</head>
<body>
<?php
if($email == "") {
echo ("Bitte geben Sie eine richtige mail Adresse an!!!");
}
else {
echo ("Guten Tag $vname $name<br>");
echo ("Sie sind am $tag.$monat im Jahre $jahr geboren<br>");
echo ("Ihre E-Mail Adresse lautet: $email<br>");
echo ("Icq:$icq / MSN:$msn<br>");
}
?>
<br><br><br><br><br>
<form target="login.php" method="GET">
Sind Angaben richtig? Wenn Ja Bitte auf "Weiter" klicken, wenn Nein bitte oben im Browser "zurück" anklicken!
<input type="submit" value="Weiter" >
</body>
</html>
das ist die seite 2 die seit heute morgen irgendwie gar net mehr richtig geht sofern ich den weiter button drücke öffnet sich die seite im popup nochmal und sagt mir ich soll eine gültige mail addy angeben.
Hallo
also die 2. Seite ist nur zur überprüfung der Daten da
dort kann der user seine eingaben überprüfen.
ich habe mir dieses affenformular angeuckt... naja irgendwie hilfts mir gar net weiter.
es würde Dir weiterhelfen, wenn Du Dich damit näher befassen würdest.
Zu Deinem Code:
Du solltest Dir aktuellere Lektüre zu PHP beschaffen, Dein Code verlässt sich auf register_globals = on. Wie Du der von mir verlinkten Seite entnehmen kannst, ist seit PHP 4.2.0, d.h. seit fast vier Jahren register_globals = off Standardeinstellung.
<?php
if($email == "") {
echo ("Bitte geben Sie eine richtige mail Adresse an!!!");
Klammern sind bei echo nicht erforderlich, in manchen Fällen sogar nicht erlaubt.
}
else {
echo ("Guten Tag $vname $name<br>");
echo ("Sie sind am $tag.$monat im Jahre $jahr geboren<br>");
echo ("Ihre E-Mail Adresse lautet: $email<br>");
echo ("Icq:$icq / MSN:$msn<br>");
}
Wie ich bereits vermutete, diese Angaben tauchen _nicht_ im Formular auf.
?>
<br><br><br><br><br>
<form target="login.php" method="GET">
Sind Angaben richtig? Wenn Ja Bitte auf "Weiter" klicken, wenn Nein bitte oben im Browser "zurück" anklicken!
Hier ein paar nette versteckte Formularfelder, siehe SELFHTML, mit den von Dir benötigten Werten, das wäre schon alles.
<input type="submit" value="Weiter" >
Ach ja, es wäre nett, Dein Formular mit </form> zu beenden ...
</body>
</html>
... noch besser, den gesamten Code zu validieren.
Freundliche Grüße
Vinzenz
Danke für die hilfe also mit den versteckten feldern probier ich gleich aus aber was irgewndwie immer noch da ist, ist das die seite nicht wie eigentlich eingegeben zur login.php wechselt sondern die seite aw.php erneut öffnet
die einstellung register_globals=on ist von mir gewollt da ich es für anfänger versuche als einfacher erachte
den code von der aw.php haste ja im vorigem post gesehen
guck dir doch einfach mal das ergebniss an
http://thon.dyndns.org/aw.html
vllt kannste mir ja noch erklären wieso er nicht zur login.php wechselt nach der aw.php
vielen dank für deine mühe
gruß thon
Hello,
die einstellung register_globals=on ist von mir gewollt da ich es für anfänger versuche als einfacher erachte
Das sehe ich ganz anders.
Wenn ein System viele Dinge "automatisch" regelt und dabei diverse innere Abhängigkeiten berücksichtigt werden, sodass man als Anfänger gar nicht genau weiß, wie das Ergebnis denn jetzt zustande gekommen ist, dann ist das doch eher kontraproduktiv.
Für einen Anfänger sollte ein System möglichst "geradeaus" konfiguriert sein. Register Globals = off ist ein solcher Schritt in die richtige Richtung.
Man kann dann sicher sein, dass im $_GET-Array keine POST-Parameter landen, oder dass jemand auf Scriptebene eigene Arrays einschleust usw.
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
Hallo Thon,
die einstellung register_globals=on ist von mir gewollt da ich es für anfänger versuche als einfacher erachte
Der Meinung bin ich überhaupt nicht. Man gewöhnt sich im Gegenteil einen ganz schlechten Stil an und hat dann große Probleme, wenn man stattdessen sinnvoll programmieren möchte.
den code von der aw.php haste ja im vorigem post gesehen
guck dir doch einfach mal das ergebniss an
http://thon.dyndns.org/aw.html
Du musst schon dafür sorgen, dass in den versteckten Feldern auch sinnvolle Werte stehen:
<input type="hidden" name="email" value="['$email']">
<input type="hidden" name="UserBrowser" value="">
<input type="hidden" name="UserBrowser" value="">
<input type="hidden" name="UserBrowser" value="">
vllt kannste mir ja noch erklären wieso er nicht zur login.php wechselt nach der aw.php
Weil du das falsche Attribut verwendest:
<form target="login.php" method="GET">
Du willst stattdessen das action-Attribut verwenden. Du solltest dir vielleicht auch noch mal in SELFHTML den Bereich über Formulare durchlesen.
Schöne Grüße,
Johannes
Hallo,
was irgewndwie immer noch da ist, ist das die seite nicht wie eigentlich eingegeben zur login.php wechselt sondern die seite aw.php erneut öffnet
natürlich, es steht ja so in deinem Formular.
die einstellung register_globals=on ist von mir gewollt da ich es für anfänger versuche als einfacher erachte
Das ist nicht gut. Klar, so ist es "einfacher", auf die übergebenen Parameter zuzugreifen, aber warum gewöhnst du es dir nicht gleich "richtig" an?
den code von der aw.php haste ja im vorigem post gesehen
guck dir doch einfach mal das ergebniss an
view-source:http://thon.dyndns.org/aw.html
vllt kannste mir ja noch erklären wieso er nicht zur login.php wechselt nach der aw.php
Ganz einfach: Weil du es so angegeben hast. Da steht doch:
<form action="aw.php" method="GET">
Also werden die Formulardaten mit der GET-Methode an aw.php übergeben.
Das hier:
<button name="Klickmich" type="button" value="Überraschung" onclick=thon.dyndns.org/login.php;>
ist dagegen nicht nur zweckfrei, sondern auch falsch. Zum Abschicken des Formulars hast du ja schon einen Submit-Button. Wozu ist dieser hier also noch gut? Außerdem ist das onclick-Attribut unsinnig: Nicht nur, dass die Anführungszeichen fehlen, sondern das ist auch keine gültige Javascript-Anweisung.
So long,
Martin
Hello Thon,
einiges an Anregung bekommst Du hier:
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom