formular = varibable macht mich irre

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

  • formular = varibable macht mich irre

    hallo,

    hab ein formular, wo ich eine variable verändert habe.
    vorher im textfeld als wert: <? echo $name?>
    nachher im textfeld als wert: <? echo $umsSystem->nic ?>

    das $umsSystem->nic ist eine variable, welches von einer benutzerverwaltung stammt. ist man also eingeloggt, erscheint der benutzername sofort im formularfeld.


    4 eingabefelder werden auf inhalt geprüft,
    wenn ich drei ausfülle und eines leer lasse, erscheint dieselbe seite nochnmal + inklusive einer meldung, dass das feld ausgefüllt werden muss.

    problem:
    die werte der drei ausgefüllten felder werden in ein cookie gespeichert, nicht aber das der veränderten variable

    (wenn man eingeloggt ist, gibts keine probleme, alles läuft perfekt!)

    hier das mail-script:
    PHP-Code:
    <?php


    $ip 
    getenv("REMOTE_ADDR");
    $version "1.0.1";
    if (
    $action != "sendmail") {
        
    $p base64_decode('PHAgYWxpZ249ImNlbnRlciI+PGZvbnQgc2l6ZT0iMSI+PGI+UG93ZXJlZCBieSA8YSBocmVmPSJodHRwOi8vd3d3LnNjcmlwdHMyNC5jb20iIHRhcmdldD0iX2JsYW5rIj4yNCBNYWlsPC9hPjwvYj48L2ZvbnQ+PC9wPg==');
        include (
    "templates/mailform.tpl");
        exit;
    }

    if (
    $action == "sendmail") {
        
    $recnameto split (",",$recname);
        
    $recemailto split (",",$recemail);
        
    $count count ($recemailto);
        for (
    $i=0;$i<$count;$i++) {
            if (
    $name == "") {
                
    $nameerror "1";
                
    $send "no";
            }
            if (
    $recnameto[$i] == "") {
                
    $nameerror "1";
                
    $send "no";
            }
            if (!
    ereg('^[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+'.'@'.'[-!#$%&\'*+\\/0-9=?A-Z^_`a-z{|}~]+\.'.'[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+$'$email) || ereg("'"$email)) {
                
    $emailerror "1";
                
    $send "no";
            }
            if (!
    ereg('^[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+'.'@'.'[-!#$%&\'*+\\/0-9=?A-Z^_`a-z{|}~]+\.'.'[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+$'$recemailto[$i]) || ereg("'"$recemailto[$i])) {
                
    $recemailerror "1";
                
    $send "no";
            }
            if (
    $subject == "") {
                
    $subjecterror "1";
                
    $send "no";
            }
            if (
    $message == "") {
                
    $messageerror "1";
                
    $send "no";
            }
            if (
    $cname == $name && $cemail == $email && $crecname == $recnameto[$i] && $crecemail == $recemailto[$i] && $csubject == $subject && $cmessage == $message && $cip == $ip) {
                
    $cookieerror "1";
                
    $send "no";
            }
            if (
    $send ==  "no") {
                
    $error "1";
                include (
    "templates/mailform.tpl");
            exit;
            }
        }
        
    $message nl2br($message);
        
    setcookie(cname$nameto[$i], time()+86400);
        
    setcookie(cemail$emailtime()+86400);
        
    setcookie(crecname$recnametime()+86400);
        
    setcookie(crecemail$recemailtime()+86400);
        
    setcookie(csubject$subjecttime()+86400);
        
    setcookie(cmessage$messagetime()+86400);
        
    setcookie(cip$iptime()+86400);
        
    $recnameto split (",",$recname);
        
    $recemailto split (",",$recemail);
        
    $count count ($recemailto);
        for (
    $i=0;$i<$count;$i++) {
            if (
    $send != "no") {
                
    $mailheader "From: $name <$email>\nX-Mailer: 24 Mail v$version by [url]www.scripts24.com\nContent-Type:[/url] text/html";
                
    mail("$recnameto[$i] <$recemailto[$i]>","$subject","$message","$mailheader");
            }
        }
        
    $p base64_decode('PHAgYWxpZ249ImNlbnRlciI+PGZvbnQgc2l6ZT0iMSI+PGI+UG93ZXJlZCBieSA8YSBocmVmPSJodHRwOi8vd3d3LnNjcmlwdHMyNC5jb20iIHRhcmdldD0iX2JsYW5rIj4yNCBNYWlsPC9hPjwvYj48L2ZvbnQ+PC9wPg==');
        include(
    "templates/mailsent.tpl");
        exit;
    }
    ?>
    hoffe sehr, das mir da wer weiterhelfen kann.
    gruss
    bastian

    NACHTRAG:

    kann man eigentlich sagen: $name =$umsSystem->nic ???
    Zuletzt geändert von bastian; 16.04.2003, 14:55.

  • #2
    so speicher ich in sessions ab und überschreibe die werte, falls vorhanden.

    PHP-Code:
    <?php

      session_start
    ();

      while (list (
    $key$val) = each ($HTTP_POST_VARS)) {
        ${
    $key} = $HTTP_POST_VARS[$key];
        if (!
    session_is_registered($key)) session_register($key) ;
      }

      while (list (
    $key$val) = each ($HTTP_GET_VARS)) {
        ${
    $key} = $HTTP_GET_VARS[$key];
        if (!
    session_is_registered($key)) session_register($key) ;
      }

      
    header("Location: ".getenv("HTTP_REFERER"));

    ?>
    evtl. noch auch neue schreibweise anpassen.

    funktioniert eigentlich super.

    check mal an, dass du das für deine cookies umschreibst.
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      @ abraxax
      proggst du immer nich mit register_globals = on???

      Kommentar


      • #4
        hi Abraxax,
        leider weiss ich absolut nicht, wie man das macht...
        kannst du den einen fehler oder ungereimtheit in meinem script finden?
        gruss
        bastian

        Kommentar


        • #5
          Original geschrieben von Trashar
          @ abraxax
          proggst du immer nich mit register_globals = on???
          hatte ich mal. JA... *schäm*

          hab vor zwei oder so wochen das auf off gestellt. ausserdem habe ich alle meldungen aktiviert. auch die warnings.

          siehe dazu hier vorbei.
          INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


          Kommentar


          • #6
            @bastian
            da ich nie mit cookies arbeite kann ich dir da auch nicht viel zu sagen. ich mache alles über sessions.
            INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


            Kommentar


            • #7
              kannste mir nen ansatz geben, wie ich die kekse durch die seschens ersetzte? (wens geht im "sendung für die maus"-stil )

              gruss
              bastian

              Kommentar


              • #8
                lies dir unser tut zu sessions durch, dann wirds dir schnell klar.

                Kommentar

                Lädt...
                X