Das Webmaster Netzwerk Foren-Übersicht
Registrieren
Mitgliederliste
Benutzergruppen
FAQ
Beiträge seit dem letzten Besuch anzeigen
Das Webmaster Netzwerk Foren-Übersicht
 
PHP - formulareingabe in sessionvariable speichern

 
   Das Webmaster Netzwerk Foren-Übersicht -> Entwicklung
Vorheriges Thema anzeigen:
Nächstes Thema anzeigen:  
BeitragVerfasst am: Sa Jun 19, 2004 13:12    Titel: PHP - formulareingabe in sessionvariable speichern
Autor Nachricht
mr.green



Anmeldedatum: 25.09.2002
Beiträge: 180

BeitragVerfasst am: Sa Jun 19, 2004 13:12    Titel: PHP - formulareingabe in sessionvariable speichern

ich hab eine seite -> login.php.

<?php

session_start();
session_register('name');
session_register('pass');

?>
<html>
<head>
<title>LogIn</title>
</head>
<body>
<p>LOGIN</p>
<form action="welcome.php" method="GET">

<br>Name:<br>
<input type=text name="name" size=35>

<br>Passwort:<br>
<input type=password name="pass" value = "<?=$_session[pass]?>" size=35>

<br><br><br>
<input type=submit name="submit" value = "senden">

</form>
</body>
</html>

in meiner welcome.php ist aber dann der inhalt von $_SESSION['pass'] leer, also es wird beim abschicken offensichtlich nichts in die variable geschrieben.

hab jetzt gut zwei stunden im internet geschmöckert aber alles was man findet sind "all in one" lösungen, sprich eine seite wo formular und überprüfung und auswertung zusammengefasst sind.
sowas will ich nicht & brauch ich auch nicht.

pleaZe Help Wink
Nach oben
BeitragVerfasst am: Sa Jun 19, 2004 20:33    Titel:
Autor Nachricht
Toby



Anmeldedatum: 08.08.2002
Beiträge: 182

BeitragVerfasst am: Sa Jun 19, 2004 20:33    Titel:

duh ast auch in der 'welcome.php'
wieder deine session via session_start() gestartet, ja ?
Nach oben
BeitragVerfasst am: Sa Jun 19, 2004 20:52    Titel:
Autor Nachricht
mr.green



Anmeldedatum: 25.09.2002
Beiträge: 180

BeitragVerfasst am: Sa Jun 19, 2004 20:52    Titel:

ja.
auch wenn ich dann im verzeichnis sessiondata nachsehe und mir die session im notepad ansehe sind zwar die variablennamen registriert, also vorhanden aber kein wert zugewiesen.
bin echt am verzweifeln. suche nach einer lösung für das problem schon seit heute in der früh ...

##welcome.php##

<?php
session_start();
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
<title>Welcome</title>
</head>
<body>

<?PHP

echo "<br>Name: ", $_SESSION['name'];
echo "<br>pass: ", $_SESSION['pass'];
echo "<br>uebertrag: ", $_SESSION['uebertrag'];

?>


</body>
</html>
Nach oben
BeitragVerfasst am: Sa Jun 19, 2004 20:55    Titel:
Autor Nachricht
mr.green



Anmeldedatum: 25.09.2002
Beiträge: 180

BeitragVerfasst am: Sa Jun 19, 2004 20:55    Titel:

hab auch schon geglaubt dass ich da vielleicht nen tippfehler hab:
<input type=password name="pass" value = "<?=$_session[pass]?>" size=35>
und das auf
"<?=$_session['pass']?>" geändert, hilft aber auch nix.
Nach oben
BeitragVerfasst am: Sa Jun 19, 2004 21:39    Titel:
Autor Nachricht
Toby



Anmeldedatum: 08.08.2002
Beiträge: 182

BeitragVerfasst am: Sa Jun 19, 2004 21:39    Titel:

erm ..
du musst die session_variablen auch in der welcome.php setzen!!!!!

du erzeugst sie ja erst bei der übergabe vom skript
also kannst du die variablen auch erst NACH der übergabe registrieren Smile
Nach oben
BeitragVerfasst am: Sa Jun 19, 2004 22:04    Titel:
Autor Nachricht
mr.green



Anmeldedatum: 25.09.2002
Beiträge: 180

BeitragVerfasst am: Sa Jun 19, 2004 22:04    Titel:

meinst du mit
$_SESSION['pass'] = $_POST['pass'] ;
?
Nach oben
BeitragVerfasst am: Sa Jun 19, 2004 22:21    Titel:
Autor Nachricht
mr.green



Anmeldedatum: 25.09.2002
Beiträge: 180

BeitragVerfasst am: Sa Jun 19, 2004 22:21    Titel:

inzwischen hab ichs endlich zum laufen gebracht.
danke mal vorerst toby!
Nach oben
BeitragVerfasst am: Sa Jun 19, 2004 22:26    Titel:
Autor Nachricht
Toby



Anmeldedatum: 08.08.2002
Beiträge: 182

BeitragVerfasst am: Sa Jun 19, 2004 22:26    Titel:

und mal so nebenbei [hab ich völlig ausser acht gelassen gehabt]
<input type=password name="pass" value = "<?=$_session[pass]?>" size=35> <--
das value=".." zeuchs kannst du in deisem fall getrost aussen vor lassen! das bringt dir überhaupt nichts!

im prinzp brauchst du den kompletten block
Code:

<?php

session_start();
session_register('name');
session_register('pass');

?>

erst in der welcome.php und vorher nicht!
Nach oben
BeitragVerfasst am: Sa Jun 19, 2004 22:31    Titel:
Autor Nachricht
mr.green



Anmeldedatum: 25.09.2002
Beiträge: 180

BeitragVerfasst am: Sa Jun 19, 2004 22:31    Titel:

so hab ichs jetzt in etwa drinnen.

ahhrrggg... jetzt hab ich im IE die sicherheitsstufe auf HOCH gestellt, sprich cookies deaktiviert und nix geht mehr.
hab i schon gesagt dass ich sessions hasse *lol*
Nach oben
BeitragVerfasst am: Sa Jun 19, 2004 22:34    Titel:
Autor Nachricht
mr.green



Anmeldedatum: 25.09.2002
Beiträge: 180

BeitragVerfasst am: Sa Jun 19, 2004 22:34    Titel:

ahja und was da jetzt noch dazukommt ist, dass eine zweite session gestartet wird wenn die cookies aus sind. ich werd verrückt
Nach oben
BeitragVerfasst am: Sa Jun 19, 2004 22:54    Titel:
Autor Nachricht
mr.green



Anmeldedatum: 25.09.2002
Beiträge: 180

BeitragVerfasst am: Sa Jun 19, 2004 22:54    Titel:

hier mal meine 2 php seiten die wunderbar mit cookies funktionieren aber ohne cookies nicht:

## login.php ##
Code:

<?php

session_start();

// ---- check ob erstmaliger seitenaufbau oder ob formular abgeschickt wurde - submit button wird überprüft
if(isset($_POST['submit'])){
  // ---- eingaben aus header auslesen und in variablen speichern,
  // ---- wenn etwas eingegeben wurde datenbank loginvergleiche starten
  $name_submitted = $_POST['name'];
  $pass_submitted = $_POST['pass'];
  if($name_submitted !="" && $pass_submitted !=""){
  database_login_check($name_submitted,$pass_submitted);
  }else{
  echo "<br>Bitte überprüfen Sie Ihre Angaben";
  }

}

// ---- funktion verbindet sich später mit datenbank und prüft ob benutzer vorhanden
function database_login_check($name_submitted,$pass_submitted){

session_register('name');
session_register('pass');
$_SESSION['name'] = $name_submitted;
$_SESSION['pass'] = $pass_submitted;
header('Location:eingang.php');
}




?>
<html>
<head>
<title>LogIn</title>
</head>
<body>
<p>LOGIN</p>
<form action="login.php" method="POST">

<br>Name:<br>
<input type=text name="name" size=35>

<br>Passwort:<br>
<input type=password name="pass" size=35>

<br><br><br>
<input type=submit name="submit" value = "senden">

</form>



</body>
</html>


## eingang.php ##
Code:

<?php
session_start();
echo "Willkommen User <b>".$_SESSION['name']."</b> bei der Session ".session_id();
 ?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<title>Untitled</title>
</head>
<body>

</body>
</html>
Nach oben
BeitragVerfasst am: Sa Jun 19, 2004 23:31    Titel:
Autor Nachricht
mr.green



Anmeldedatum: 25.09.2002
Beiträge: 180

BeitragVerfasst am: Sa Jun 19, 2004 23:31    Titel:

cookie problem schon gelöst:
Code:

$parse = session_name()."=".session_id();
header('location:eingang.php?'.$parse);

somit wird der sessionname und die zugehörige nummer an eingang.php mitgeschickt und die greift dann auch wirklich wieder auf die richtige session zu. warum auch immer ...
Nach oben
Beiträge der letzten Zeit anzeigen:   
   Das Webmaster Netzwerk Foren-Übersicht -> Entwicklung Alle Zeiten sind GMT + 2 Stunden
Seite 1 von 1
Gehe zu: