auf SESSION anpassen
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
absender
adresse
aktivierung
anfang
benutzt code
code
eingabe
email
erstellt date
erstellt email
ersten satz
feld
klicken
nachname
post
rand
registrierung
session
test
vorname
-
Hallo
wie kann ich es statt eingabe der email, er eine SESSION benutzt?
$DatabaseHost = "mysql.lima-city.de"; $DatabaseUser = "USER......"; $DatabasePassword = "....."; $Database = "db_........_1"; $TableAktivierung = "Aktivierung"; $Absender = "...........@.......de"; if($_REQUEST['Send']) { $DatabasePointer = mysql_connect($DatabaseHost, $DatabaseUser, $DatabasePassword); mysql_select_db($Database, $DatabasePointer); $_REQUEST['Email'] = mysql_real_escape_string($_REQUEST['Email']); $Erstellt = date("Y-m-d H:i:s"); $Aktivierungscode = rand(1, 99999999); mysql_query("INSERT INTO $TableAktivierung (Aktivierungscode, Erstellt, EMail, Aktiviert) VALUES ('$Aktivierungscode', '$Erstellt', '".$_REQUEST['EMail']."', 'Nein')", $DatabasePointer); $ID = mysql_insert_id(); mail($_REQUEST['EMail'], "Aktivierung für Philip-Felder.de", "Hallo,\n\num den Registierungsprozess abzuschließen, klicken Sie auf den folgenden Link:\n\nhttp://www...............de/registrierung-abschliessen.php?ID=$ID&Aktivierungscode=$Aktivierungscode", "FROM: $Absender"); echo "E-'Mail scheken"; } else { ?> <form action="<?php echo$_SERVER['PHP_SELF']; ?>" method="post"> <input type="text" name="email"> <input type="submit" value="Senden"> </form> <?php } ?> </body> </html>
Die session heißt :
$_SESSION['mail']
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Ich nix verstehe, bitte klarer ausdrücken! Eingangspost editieren!
Deinen ersten Satz verstehe ich nicht. $_SESSION['mail'] ist keine Session, sondern eine Session-Variable!
Beitrag zuletzt geändert: 19.2.2010 14:30:35 von karpfen -
Ein Weg wäre, am Anfang die Session zu überprüfen und wenn da eine Email vorhanden ist, diese zu benutzen.
Also etwa so (Wenn die Email in der Session nicht vorhanden ist, wird die Eingabe benutzt)
if(isset($_SESSION['mail'])) { $email = $_SESSION['mail']; } else { $email = $_REQUEST['email']; }
Und in deinem Code
$DatabaseHost = "mysql.lima-city.de"; $DatabaseUser = "USER......"; $DatabasePassword = "....."; $Database = "db_........_1"; $TableAktivierung = "Aktivierung"; $Absender = "...........@.......de"; if($_REQUEST['Send']) { $DatabasePointer = mysql_connect($DatabaseHost, $DatabaseUser, $DatabasePassword); mysql_select_db($Database, $DatabasePointer); if(isset($_SESSION['mail'])) { $email = $_SESSION['mail']; } else { $email = $_REQUEST['Email']; } $email = mysql_real_escape_string($email); $Erstellt = date("Y-m-d H:i:s"); $Aktivierungscode = rand(1, 99999999); mysql_query("INSERT INTO $TableAktivierung (Aktivierungscode, Erstellt, EMail, Aktiviert) VALUES ('$Aktivierungscode', '$Erstellt', '".$email."', 'Nein')", $DatabasePointer); $ID = mysql_insert_id(); mail($email, "Aktivierung für Philip-Felder.de", "Hallo,\n\num den Registierungsprozess abzuschließen, klicken Sie auf den folgenden Link:\n\nhttp://www...............de/registrierung-abschliessen.php?ID=$ID&Aktivierungscode=$Aktivierungscode", "FROM: $Absender"); echo "E-'Mail scheken"; } else { ?> <form action="<?php echo$_SERVER['PHP_SELF']; ?>" method="post"> <input type="text" name="email"> <input type="submit" value="Senden"> </form> <?php } ?> </body> </html>
Beitrag zuletzt geändert: 19.2.2010 14:31:27 von rangmar -
Also ich möchte das der die e-mail adresse von dem anmeldeformular:
<div id="content" style="position:absolute;Left:300px;Top:180px"> <div style="position:absolute;Top:70px;Left:180px"> <font color="#FFFFFF"> <center> <form action="eintragen.php" method="post"> Vorname:<br> <input type="text" size="24" maxlength="50" name="vorname"><br><br> Nachname:<br> <input type="text" size="24" maxlength="50" name="nachname"><br><br> E-Mail-adresse:<br> <input type="text" size="24" maxlength="50" name="email"><br><br> Benutzername:<br> <input type="text" size="24" maxlength="50" name="username"><br><br> Passwort:<br> <input type="password" size="24" maxlength="50" name="passwort"><br> Passwort wiederholen:<br> <input type="password" size="24" maxlength="50" name="passwort2"><br> <input type="submit" value="Anmelden"> </form> </center> </font> </div> </div>
Nach test.php schicken:
$DatabaseHost = "mysql.lima-city.de"; $DatabaseUser = "USER........."; $DatabasePassword = "........"; $Database = "db_.........._1"; $TableAktivierung = "Aktivierung"; $Absender = "............"; if($_REQUEST['Send']) { $DatabasePointer = mysql_connect($DatabaseHost, $DatabaseUser, $DatabasePassword); mysql_select_db($Database, $DatabasePointer); $_REQUEST['Email'] = mysql_real_escape_string($_REQUEST['Email']); $Erstellt = date("Y-m-d H:i:s"); $Aktivierungscode = rand(1, 99999999); mysql_query("INSERT INTO $TableAktivierung (Aktivierungscode, Erstellt, EMail, Aktiviert) VALUES ('$Aktivierungscode', '$Erstellt', '".$_REQUEST['EMail']."', 'Nein')", $DatabasePointer); $ID = mysql_insert_id(); mail($_REQUEST['EMail'], "Aktivierung für Philip-Felder.de", "Hallo,\n\num den Registierungsprozess abzuschließen, klicken Sie auf den folgenden Link:\n\nhttp://www..........de/registrierung-abschliessen.php?ID=$ID&Aktivierungscode=$Aktivierungscode", "FROM: $Absender"); echo "E-'Mail scheken"; } else { ?> <form action="<?php echo$_SERVER['PHP_SELF']; ?>" method="post"> <input type="text" name="email"> <input type="submit" value="Senden"> </form> <?php } ?> </body> </html>
Ich habe eine session registriert in eintragen.php:
..... $username = $_POST["username"]; $passwort = $_POST["passwort"]; $vorname = $_POST["vorname"]; $nachname = $_POST["nachname"]; $email = $_POST["email"]; $_SESSION['mail'] = $email; .....
Wie mache ich es dass er in test.php keine eigabe braucht sondern nur noch die session
benutzt?$_SESSION['mail']
Beitrag zuletzt geändert: 19.2.2010 14:37:05 von philip-felder -
Fast so wie ich es gerade beschrieben hatte.
Du entfernst in deiner test.php die Eingabe und nimmst $_SESSION anstelle von $_REQUEST.
$DatabaseHost = "mysql.lima-city.de"; $DatabaseUser = "USER........."; $DatabasePassword = "........"; $Database = "db_.........._1"; $TableAktivierung = "Aktivierung"; $Absender = "............"; if($_SESSION['mail']) { $DatabasePointer = mysql_connect($DatabaseHost, $DatabaseUser, $DatabasePassword); mysql_select_db($Database, $DatabasePointer); $_SESSION['mail'] = mysql_real_escape_string($_SESSION['mail']); $Erstellt = date("Y-m-d H:i:s"); $Aktivierungscode = rand(1, 99999999); mysql_query("INSERT INTO $TableAktivierung (Aktivierungscode, Erstellt, EMail, Aktiviert) VALUES ('$Aktivierungscode', '$Erstellt', '".$_SESSION['mail']."', 'Nein')", $DatabasePointer); $ID = mysql_insert_id(); mail($_SESSION['mail'], "Aktivierung für Philip-Felder.de", "Hallo,\n\num den Registierungsprozess abzuschließen, klicken Sie auf den folgenden Link:\n\nhttp://www..........de/registrierung-abschliessen.php?ID=$ID&Aktivierungscode=$Aktivierungscode", "FROM: $Absender"); echo "E-'Mail scheken"; } else { ?> Keine Email-Adresse angegeben <?php } ?> </body> </html>
Beitrag zuletzt geändert: 19.2.2010 14:44:02 von rangmar -
Hast du die Session denn gestartet?
Das machst du am Besten ziemlich am Anfang deiner Php-Dateien mit session_start();
Ansonsten mach vor if($_SESSION['mail']) mal eine Ausgabe. Dann siehst du ziemlich genau, was in der Session gespeichert ist und was nicht.
print_r($_SESSION); if($_SESSION['mail']) ...
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage