Problem mit time() - Variablenwert ändert sicj

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Problem mit time() - Variablenwert ändert sicj

    Hallo,
    wenn ich den aktuellen
    Timestamp mit time() an eine Variable übergebe,
    ändert sich der Wert der Variablen im laufe des Scripts.

    hier ein ausschnitt aus einem newsletter bestell script:


    PHP-Code:
    $freischaltcode time(); // Freischaltcode ist der aktuelle timestamp
    echo "1--- " $freischaltcode// gebe hier den code aus

    $sql_nl_email_add "INSERT INTO newsletter (id, email, code, aktiv)
    VALUES ('0', '" 
    $_GET['email'] . "', '" $freischaltcode "', '0');";
    // sql syntax code wird in die tabelle geadded

    if(!@mysql_query($sql_nl_email_add))
    {
       echo 
    "<div class='fehlermeldung'>Datenbankzugriff fehlgeschlagen!</div>";
    }
    else
    {

    $email_header "From: [email]absender@host.de[/email]";
    $email_text "Text der email... 
    Klicken Sie Bitte auf den unteren Link um die Bestellung zu aktivieren.\n\n
    [url]http://[/url]" 
    $_SERVER['SERVER_NAME'] . dirname($_SERVER['PHP_SELF']) .
    nl_aktivierung.php?id=" . mysql_insert_id() .
    "
    &code=" . $freischaltcode . "\n\n";

    echo "
    2--- " . $freischaltcode; // hier ist der inhalt von $frischaltcode anders...
    if(!@mail(
    $_GET['email'], "Newsletter Aktivierung", $email_text$email_header))
    {
    echo "
    <div class='fehlermeldung'>Fehler E-mail konnte nicht gesendet werden.</div>";
    }
    else
    {
    echo "
    3--- " . $freischaltcode; // hier wieder anderer inhalt.....
    ..... 
    Wenn ich dann auf der aktivierungsseite den per url übergebenen code mit dem aus
    der DB vergleiche ist der code dann natürlich ein anderer und die email wird nicht freigeschaltet..

    Wenn ich das ganze lokal teste läuft alles wunderbar.....
    nur auf dem Webspace nicht.

    Wiese verhält sich die Variable so?
    Wie soll ich das umgehen ? habs mit /10 und dann wieder *10
    versucht... das selbe ergebnis
    oder soll ich das ganze als string defenieren ?

    thanks for help

    darius
    Zuletzt geändert von dar1u5; 12.09.2003, 21:22.
    ................
    .:@R1U5::.
    :::::::::::::::::

  • #2
    Nun, das Problem hatte ich noch nie, allerdings sieht es sehr unproffesionell aus, wenn du als temporären Code das Datum nimmst. Erzeuge doch ganz simpel eine Zufallszahl: rand();

    Kommentar

    Lädt...
    X