php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2004-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 16.12.2004, 22:24  
Benutzer
 
Registriert seit: 07.12.2003
Beiträge: 73
medico zeigte ein beschämendes Verhalten in der Vergangenheit
Standard Irgendwas klappt mit meinen Session nicht!!! HILFE!

Hallo,
ich bin gerade dabei ein mehrseitiges Formular zu gestalten, aber leider bin ich auf ein Problem gestossen und komme nicht weiter.

Es ist so das ich bei der ganzen Sache auch Pflichtfelder habe auf Seite 1, 2 und 3. Ich habe es so gemacht wenn einer vergisste ein Feld auf Seite 1 auszufüllen wird er zurück geleitet und ein Hinweis erscheint. Klappt auch bestens. Nun hat er das Feld ausgefüllt und kommt auf Seite 2 dort gibt es auch ein Pflichtfeld wenn er dieses nicht ausfüllt sollte er wenn er auf Seite 3 gehen will wieder zurück geleitet werden. Das macht er nicht, statt desen wird man wieder auf Seite 1 zurückgeleitet und dort sind dann alle Felder leer.

Zur Übersicht poste ich mal die Codes:

Seite 1
Code:
<? session_start ();  ?> 
......
<form name="form1" method="post" action="seite2.php">
<table width="100%"  border="1" cellspacing="0" cellpadding="0" style="border-collapse: collapse" bordercolor="#10415A">
<tr>
<td><table width="100%"  border="0" cellpadding="0" cellspacing="0" bgcolor="#EDEBC2">
<tr class="text">
<td></td>
<td></td>
<td><font size="1"><font color="#FF0000">                                          
<? if ($fehler =="1"){
echo  "
Bitte füllen Sie alle Pflichtfelder aus!
";} ?> 


</font></td>
</tr>
<tr class="text">
<td>Name*</td>
<td>:</td>
<td><input name="name" type="text" id="name" value="<? echo $name ?>" size="30"></td>
</tr>
<tr class="text">
<td>Strasse und Nr.*</td>
<td>:</td>
<td><input name="anschrift" type="text" id="anschrift" value="<? echo $anschrift ?>" size="30"></td>
</tr>
<tr class="text">
<td>PLZ und Ort*</td>
<td>:</td>
<td><input name="ort" type="text" id="ort" value="<? echo $ort ?>" size="30"></td>
</tr>
<tr class="text">
<td>Email*</td>
<td>:</td>
<td><input name="email" type="text" id="email" value="<? echo $email ?>" size="30"></td>
</tr>
<tr class="text">
<td class="infos">* Pflichtfelder </td>
<td></td>
<td><div align="right">
<input name="imageField" type="image" src="images/eintrag/schritt2.jpg" width="158" height="23" border="0">
</div></td>
</tr>
</table></td>
</tr>
</table>
</form>
Seite 2
Code:
<? session_start (); 
  $_SESSION['name'] = $_POST['name'];
  $_SESSION['anschrift'] = $_POST['anschrift'];
  $_SESSION['ort'] = $_POST['ort'];
  $_SESSION['tele'] = $_POST['tele'];
  $_SESSION['email'] = $_POST['email'];
  
if(empty($name))        {
$stop = "stop";
}
if(empty($anschrift))        {
  $stop = "stop";
}
if(empty($ort))        {
  $stop = "stop";
}
if(empty($email))        {
  $stop = "stop";
}

if ($stop == "stop")        {

header ("Location: seite1.php?fehler=1"); 
}

else  {
}
?>
....
<form name="form1" method="post" action="Seite3.php">
<table width="100%"  border="1" cellspacing="0" cellpadding="0" style="border-collapse: collapse" bordercolor="#10415A">
<tr>
<td><table width="100%"  border="0" cellpadding="0" cellspacing="0" bgcolor="#EDEBC2">
<tr class="text">
<td></td>
<td></td>
<td><font size="1"><font color="#FF0000">
<? if ($fehler =="1"){
echo  "
Bitte f&uuml;llen Sie alle Pflichtfelder aus!
";} ?>
</font></td>
</tr>
<tr class="text">
<td>Beschreibung*</td>
<td>:</td>
<td><input name="beschreibung" type="text" id="beschreibung" value="<? echo $beschreibung ?>" size="30"></td>
</tr>
<tr class="text">
<td>Suchbegriffe</td>
<td>:</td>
<td><input name="begriffe" type="text" id="begriffe" value="<? echo $begriffe ?>" size="30"></td>
</tr>
<tr class="text">
<td><span class="infos">* Pflichtfelder </span></td>
<td></td>
<td><div align="right">
<input name="imageField" type="image" src="images/eintrag/schritt3.jpg" width="158" height="23" border="0">
</div></td>
</tr>
</table></td>
</tr>
</table>
</form>
Seite 3
Code:
<? session_start (); 
  $_SESSION['beschreibung'] = $_POST['beschreibung']; 
  $_SESSION['begriffe'] = $_POST['begriffe'];

if(empty($beschreibung))        {
  $stop = "stop";
}
if ($stop == "stop")        {

header ("Location: seite2.php?fehler=1"); 
}

else  {
}  
?>
.....
Könnt Ihr mir helfen den blöden Fehler zu finden. Wäre echt super bin doch noch Neuling was PHP angeht

Gruß Medico
medico ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 17.12.2004, 09:28  
Benutzer
 
Registriert seit: 19.04.2008
Beiträge: 47
Kenshin befindet sich auf einem aufstrebenden Ast
Standard

versuchs mal mit

diesen Code auf Seite 2
Code:
session_register("name","anschrift","ort","tele","email");
$seite1 = session_encode();
diesen Code auf Seite 1
Code:
session_decode($seite1);
das gleiche dann noch für Seite 2, also

Code auf Seite 3
Code:
session_register("beschreibung");
$seite2 = session_encode();
Code auf Seite 2
Code:
session_decode($seite2);
Kenshin ist offline  
Alt 17.12.2004, 22:12  
Benutzer
 
Registriert seit: 07.12.2003
Beiträge: 73
medico zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

danke aber so ganz klappt es nicht....

Wenn ich den Code auf Seite 2 so mache
Code:
<? session_start (); 
session_register("name","anschrift","ort","tele","email"); 
$seite1 = session_encode();

if(empty($name))        { 
$stop = "stop"; 
} 
if(empty($anschrift))        { 
........
Dann macht er es zwar richtig wenn ich von Seite 2 dann auf Seite 3 gehe und vergesse was auf seite 2 auszufüllen. Aber wenn ich auf Seite 1 bin und nicht alle Felder ausfülle werde ich auf Seite 1 zurückgeleitet (ist ja richtig) aber die Felder sind alle leer.

Und wenn ich es so mache mit Seite 2
Code:
<? session_start (); 

  $_SESSION['name'] = $_POST['name']; 
  $_SESSION['anschrift'] = $_POST['anschrift']; 
  $_SESSION['ort'] = $_POST['ort']; 
  $_SESSION['tele'] = $_POST['tele']; 
  $_SESSION['email'] = $_POST['email']; 

session_register("name","anschrift","ort","tele","email"); 
$seite1 = session_encode();

if(empty($name))        { 
$stop = "stop"; 
} 
if(empty($anschrift))        { 
........ ?>
Dann macht er es richtig wenn ich von Seite 1 auf Seite 2 gehe und was vergessen, aber wenn ich dann von Seite 2 auf 3 was vergesse werde ich wieder auf Seite 1 geleitet und es ist alles leer.

Bald steige ich auch nicht mehr durch Seite1 auf Seite 2 Seite 3 aaaaahhhhh :wink:

Gruß Medi
medico ist offline  
Alt 18.12.2004, 02:27  
Benutzer
 
Registriert seit: 19.04.2008
Beiträge: 47
Kenshin befindet sich auf einem aufstrebenden Ast
Standard

versuch mal anstatt

Code:
$_SESSION['name'] = $_POST['name'];
das

Code:
session_register("name")
Kenshin ist offline  
Alt 18.12.2004, 02:56  
Erfahrener Benutzer
 
Registriert seit: 18.09.2003
Beiträge: 13.598
PHP-Kenntnisse:
Fortgeschritten
imported_Ben ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von Kenshin
versuch mal anstatt

Code:
$_SESSION['name'] = $_POST['name'];
das

Code:
session_register("name")
an alle anfänger. NEIN. das ist totaler unfug.

Zitat:
Wenn Sie wollen, dass ihr Script unabhängig von der Einstellung von register_globals funktioniert, müssen Sie stattdessen das Array $_SESSION verwenden, weil $_SESSION-Einträge automatisch registriert werden. Wenn Sie in Ihrem Script session_register() verwenden, funktioniert es nicht in Umgebungen, in denen die PHP-Anweisung register_globals deaktiviert ist.
http://php.net/session_register

dazu auch:
http://php.net/register_globals
imported_Ben ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Session Problem karina_02 PHP Tipps 2008 6 18.05.2008 22:37
Session Variablen als Referenz!? O_o Sam781 PHP-Fortgeschrittene 4 01.10.2007 11:19
Problem bei session Lifetime Cyberbob_at_tot PHP Tipps 2007 5 05.06.2007 17:47
session nach seitenwechsel leer... GELight PHP Tipps 2006 8 17.09.2006 15:17
session array Timo Trallala PHP Tipps 2006 18 22.04.2006 13:45
[Erledigt] php session problem :( PHP Tipps 2005-2 5 21.10.2005 16:37
Session abschaltbar?? Probleme mit Objekten in Session! becks123 PHP-Fortgeschrittene 3 19.09.2005 15:47
Hilfe bei der Session PHP Tipps 2005-2 7 30.08.2005 00:35
Session wird nicht angelegt PHP Tipps 2005-2 7 24.07.2005 13:35
Kreieren einer Session PHP Tipps 2005 11 28.05.2005 15:16
verliere Session Sonja PHP Tipps 2005 3 27.04.2005 09:32
[Erledigt] Formulardaten in einer Session speichern, per Link übergeben PHP Tipps 2004-2 2 29.12.2004 15:47
[Erledigt] Hilfe...PhpBB Session Problem!! PHP Tipps 2004-2 2 15.12.2004 18:28
SESSION SCHNELLE HILFE BITTE! PHP Tipps 2004 7 02.08.2004 13:14
Hilfe mit session PHP Tipps 2004 5 10.06.2004 16:53

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
$_session bescheibung, php stop session

Alle Zeitangaben in WEZ +2. Es ist jetzt 23:57 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.