Join Fehlermitteilung und Daten weitergabe

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

  • Join Fehlermitteilung und Daten weitergabe

    Hi all,

    also, ich hoffe ich beschreibe des alles nun nicht zu konfus...

    Ich möchte für eine Clanseite ein " Join Us" Formular optimieren.
    Im Moment läuft es so, das wenn sich jemand anmelden will und der "Nic" (Member-name) schon vergeben ist ein Fehler kommt und man auf den Back Button des Browsers drücken muß. Leider sind dann alle Einträge die ich gemacht habe weg!
    Ich weiß das es möglich ist, diese irgendwie zu Speichern und nach dem drücken von Back wieder dort stehen zu haben....
    (Nur wie ...)
    Außerdem wäre es fein, nahezu die Krönung meiner Vorstellung, wenn die Abfrage passieren könnte und wenn denn der Nic schon vergeben ist, dieselbe Seite wieder eingeblendet wird mit einem Roten Text, was denn falsch war !!! und ich dann nur die entsprechende Zeile zu editieren bräuchte!



    Hmmm tja, also ich fummle mich ja schon genz gut in php durch, aber das übersteigt beiweitem mein Wissen...

    Wer kann mir da ein paar gute Tipps geben...
    Bitte berücksichtigt meinen Wissensstand (Low Level - 5.Klasse )
    Wird aber demnächst drastisch per Schulung erweitert

    Ich sage schon mal Danke und füge noch meinen bisherigen Code ein (Sorry ist was lang ... )

    Frank

    PS: Bitte auch alles andere was quark ist anmeckern, da kann ich nur lernen. THX


    PHP-Code:
    <?php
    include "pass.php";

    //weiterleiten auf die Login-Seite
    if(!$save_error and $new_reg){
            
    header("Location: login.php?".SID);
            exit;
    }
    ?>

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

    <html>
    <head>
            <title>Registrieren:</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head>

    <body bgcolor="#000000">
    <!--Fehlermeldungen-->
    <div align="center"><b>
    <?
    while(list($key,$val)=@each($save_error)){
            echo "$val $key<br>";
    }
    ?>
    </b></div>

    <form action="register.php" method="post">
    <input type="hidden" name="ums_check" value="pass=pass2">
      <table width="500" align="center" bordercolor="#FFCC00" bgcolor="#FFCC00">
        <tr>
            
          <td bgcolor="#FFCC00" align="center"><b><font color="#FF0000">UDX-Team Registrierung</font></b></td>
    </tr>
    </table>

    <table align="center" bgcolor="#FFCC00" width="500">

    <tr><td colspan="2"><b><br>
          Login-Daten:</b></td>
      </tr>

    <tr>
            <td>Team (UDX-Member-Name):</td>
            <td><input style="color:#FFFF00;background-color:#4F0000" type="text" name="nic" value="UDX-"></td>
    </tr>
    <tr>
            <td><font size="1">(Beispiel: UDX-Membername)</font></td>
    </tr>
    <tr>
            <td>Passwort:</td>
            <td><input style="color:#FFFF00;background-color:#4F0000" type="password" name="pass"></td>
    </tr>
    <tr>
            <td>Passwort Wiederholung:</td>
            <td><input type="password" style="color:#FFFF00;background-color:#4F0000" name="pass2"></td>
    </tr>
    <tr>
            <td>E-Mail:</td>
            <td><input type="text" style="color:#FFFF00;background-color:#4F0000" name="email"></td>
    </tr>

    <tr><td colspan="2"><b><br>Member-Daten:</b></td></tr>

    <tr>
            <td>Vorname:</td>
            <td><input type="text" style="color:#FFFF00;background-color:#4F0000" value="<?=$vorname?>" name="vorname"></td>
    </tr>

        <tr>
          <td bgcolor="<? echo "$geschlecht"; ?>" width="18%">Geschlecht</td>
          <td bgcolor="<? echo "$geschlecht"; ?>" width="78%">
            <select style="color:#FFFF00;background-color:#4F0000" name="geschlecht">
              <option value="männlich" selected>männlich</option>
              <option value="weiblich">weiblich</option>
            </select>
          </td>
        </tr>
        <tr> 
          <td height="20" width="40%"><font face="ExclaimDB" >Geburtsdatum:</font></td>
          <td height="20" width="60%"> <font size="1" face="ExclaimDB"> 
            <input type="text" style="color:#FFFF00;background-color:#4F0000" name="geb_datum_tag" value="" size="5" maxlength="2">
            <font color="#FFFFFF">(TT). 
            <input type="text" style="color:#FFFF00;background-color:#4F0000" name="geb_datum_mon" size="5" maxlength="2">
            (MM). 
            <input type="text" style="color:#FFFF00;background-color:#4F0000" name="geb_datum_jahr" size="8" maxlength="4" value="19">
            (JJJJ)</font> </font></td>
        </tr>
    <tr>
            <td>MSN-Email:</td>
            <td><input style="color:#FFFF00;background-color:#4F0000" type="text" value="<?=$msn?>" name="msn"></td>
    </tr>
    <tr>
      <td bgcolor="<? echo "$sc_rasse"; ?>" width="18%">SC Lieblings Rasse:</td>
      <td bgcolor="<? echo "$sc_rasse"; ?>" width="78%">
          <select style="color:#FFFF00;background-color:#4F0000" name="sc_rasse">
            <option value="keine Ahnung" <? if($sc_rasse == "keine Ahnung") { echo"selected"; } ?>>keine Ahnung</option>      
            <option value="Terraner" <? if($sc_rasse == Terraner) { echo"selected"; } ?>>Terraner</option>
            <option value="Protoss" <? if($sc_rasse == Protoss) { echo"selected"; } ?>>Protoss</option>
            <option value="Zerg" <? if($sc_rasse == Zerg) { echo"selected"; } ?>>Zerg</option>
            <option value="ALLE" <? if($sc_rasse == ALLE) { echo"selected"; } ?>>ALLE</option>
          </select>
       </td>
    </tr>
        <tr> 
          <td height="20" width="40%"><font>Seid wann spielst Du SC?</font></td>
          <td height="20" width="60%"> <font size="1" face="ExclaimDB">
            <input type="text" style="color:#FFFF00;background-color:#4F0000" name="sc_datum_mon" size="5" maxlength="2"><font color="#FFFFFF">(MM).
            <input type="text" style="color:#FFFF00;background-color:#4F0000" name="sc_datum_jahr" size="8" maxlength="4"><font color="#FFFFFF">(JJJJ)
    </font> </font> </font></td>
        </tr>
    <tr>
            <td> <br></td>
    </tr>

    <tr>
            <td></td>
            <td><input style="color:#FFFF00;background-color:#4F0000" type="submit" name="new_reg" value="Anmelden"></td>
    </tr>
    </table>
    </form>

    </body>
    </html>

  • #2
    pass.php
    ... wär auch nicht schlecht, wenn das meine Kollegen sehen könnten um Dir zu helfen

    Kommentar


    • #3
      Sorry, aus Zeitgründen habe ich mir den Text jetzt nicht ganz durchgelesen,

      aber mach es doch so:

      eine seite mit dem formular

      und eine seite:

      if isset $button
      checken, ob alle daten korrekt
      evtl. formular wieder anzeigen, mit fehlermarkierung
      else
      nur formular anzeigen
      Zuletzt geändert von TobiaZ; 02.08.2002, 23:12.

      Kommentar


      • #4
        THX für die Rückmeldung

        Hi,
        ersteinmal Danke für Eure Rückmeldungen ...
        Ähem nein, ich erwarte ersteinmal nicht wirklich etwas. Wenn sich jemand die Mühe machen möchte um mir zu helfen, bin ich froh.
        Wenn sich dann sogar noch ein Ergebnis erziehlen läßt, um etwas zu verbessern - Uiiiii - Dann spring ich vor Freude hoch : - )

        OK, stimmt, pass.php ist nicht ganz unwichtig. Hier mal die entscheidenden Zeilen ...


        PHP-Code:
        .......
        #######  Registrierung 
        if($new_reg){
                
        $umsLangData=$passLang=load_lang();
                include_once 
        $conf_pass->pfad_inc."/functions.inc.php";
                include_once 
        $conf_pass->shared_dir."/functions/functions.php";
               
        ### Prüfung
               
        include $conf_pass->pfad_inc."/check.inc.php";

                
        $reg_mail=$email;
                if(!
        $lang)$lang=$conf_pass->default_lang;
                
        ### Speichern
                
        if(!$save_error){

                        
        //Query-String erzeugen
                        
        $val="PASSWORD('$pass'), '$nic','$email','$conf_pass->reg_level','$lang'";
                        
        $fields="pass,nic,reg_mail,level,lang";
                        
        $fields=$fields.",register,last_login";
                        
        $val=$val.",NOW(),NOW()";
                                 
        $fields.=",status";
                        if(
        $conf_pass->mail_check or $conf_pass->admin_activate){
                                
        $val.=",'2','ACT=".mkPW()."'";
                                                        
        $fields.=",tmp";
                        }else{
                                                
        $val.=",'1'";
                                        }
                        
        //Datenbank-Eintrag
                        
        $query="INSERT INTO $conf_pass->db_user_login ($fields) VALUES ($val)";


                        if(!
        $faDB->query($query)){
                                
        $save_error["&nbsp;"]=$passLang->pass_ms[3];
                        }else{
                               
        faregister("ums_password");
                               
        faregister("ums_nic");
                               
                               
        $user_id=$faDB->id();

                               
        // Einträge in in der Tabelle User-Daten:
                               
        unset($set);
                               
        $felder=explode(",",$save);
                               
        $i=0;
                               while(
        $i count($felder)){
                                       if(
        $set){ $set.=", ";}
                                       
        $f=$felder[$i];
                                       
        $set.="'".$$f."'";
                                       
        $i++;
                               }
                               
        $query="REPLACE $conf_pass->db_user_data ($save) VALUES ($set)";
                               
        $faDB->query($query);
                               
                                if(
        $conf_pass->mail_check){
                                        include 
        $conf_pass->pfad_inc."/plugin_files/client.mailcheck.php";
                               }else if(
        $conf_pass->mailWelcome){
                                        
        $text=mailTpl($conf_pass->pfad_inc."/lang/$lang/client.welcome.txt",$HTTP_POST_VARS);
                                        
        faMail($reg_mail,$conf_pass->welcome_subject,$text,$conf_pass->admin_addy);

                                }
                                
        //Aditional-Jobs
                                
        include $conf_pass->pfad_inc."/plugin_files/client.reg.php";
                                
                                if(
        $conf_pass->mail2admin){// Mail an den Admin senden...
                                        
        $text=mailTpl($conf_pass->pfad_inc."/lang/$lang/admin.mail.txt",$HTTP_POST_VARS);
                                        
        $text=str_replace("{profil}","$conf_pass->fa_ums_url?admin=yes&page=uedit&user_id=$user_id",$text);
                                        
        faMail($conf_pass->admin_addy,"New User: $nic",$text,$conf_pass->admin_addy);
                                }

                        }
                }

        }

        ..... 
        Danke schonmal ...

        Frank

        Kommentar


        • #5
          Ich finde in dem was Du bis jetzt gepostet hast leider nicht das Ereignis der falschen Registrierung.
          Irgendwo wird doch, deiner Beschreibung zufolge eine Fehlermeldung ausgegeben mit der Aufforderung den Back-Button zu benutzen.

          Diese Fehlermeldung unterbindet vermutlich das Neusenden der Seite mit dem Registrierungsformular.

          Du müßtest es schaffen, daß dieses Formular trotzdem gesendet wird. Ich habe Dir alle Felder soweit eingetragen, daß die alten Inhalte entsptrechend ausgegeben werden können.

          Vorab einmal das Grundprinzip, wie es funktionieren könnte, schau es Dir an, bevor Du an Dein Skript gehst
          PHP-Code:
          <html>
          <head>
          <title>Grundprinzip</title>
          </head>
          <body>
          <?php
          $Erfolgreich 
          false;
          if (isset(
          $schicken)) { // Wenn Formular gesendet wurde, dann ...
              
          $Erfolgreich true;
              if (
          $zahl1 != "456") { // checken wir alle Eingabemöglichkeiten
                  
          $Error1 "Bitte korrigieren Sie die Eingabe auf 456";
                  
          $Erfolgreich false
              }
              if (
          $zahl2 != "123") {
                  
          $Error2 "Bitte korrigieren Sie die Eingabe auf 123";
                  
          $Erfolgreich false;
              }
              
              if (
          $zahl1 == "") {
                  
          $Error1 "Sie haben nichts eingegeben";
                  
          $Erfolgreich false;
              }
              if (
          $zahl2 == "") {
                  
          $Error2 "Sie haben nichts eingegeben";
                  
          $Erfolgreich false;
              }
          }
          if (
          $Erfolgreich == false) { // Irgendein Fehler wurde entdeckt
          ?>
          <form action="<?php print $PHP_SELF?>" method="POST">
          Geben Sie "456" ein <input type="text" name="zahl1" value="<?print $zahl1?>"> <strong><?print $Error1?></strong><br>
          Geben Sie "123" ein <input type="text" name="zahl2" value="<?print $zahl2?>"> <strong><?print $Error2?></strong><br>
          <input type="submit" name="schicken" value="GO">
          <?
          } else { // .. und wurde keiner entdeckt ...
              print "DANKE ALLES OK";
          }
          ?>
          </body>
          </html>
          So und nun Dein Skript. Die Fehlermeldungen kann ich Dir nicht belegen, da ich nicht weiß wo sie produziert werden, deshalb fehlden die prints zwischen <strong></strong>.
          Ich hoffe Du kommst soweit damit klar.
          PHP-Code:
          <?php
          include "pass.php";

          //weiterleiten auf die Login-Seite
          if(!$save_error and $new_reg){
                  
          header("Location: login.php?".SID);
                  exit;
          }
          ?>

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

          <html>
          <head>
                  <title>Registrieren:</title>
          <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head>

          <body bgcolor="#000000">
          <!--Fehlermeldungen-->
          <div align="center"><b>
          <?
          while(list($key,$val)=@each($save_error)){
                  echo "$val $key<br>";
          }
          ?>
          </b></div>

          <form action="register.php" method="post">
          <input type="hidden" name="ums_check" value="pass=pass2">
            <table width="500" align="center" bordercolor="#FFCC00" bgcolor="#FFCC00">
              <tr>
                  
                <td bgcolor="#FFCC00" align="center"><b><font color="#FF0000">UDX-Team Registrierung</font></b></td>
              </tr>
            </table>

            <table align="center" bgcolor="#FFCC00" width="500">

              <tr><td colspan="2"><b><br>
                Login-Daten:</b></td>
                </tr>
              <tr>
                  <td>Team (UDX-Member-Name):</td>
                  <?
                  if (!isset($nic)) {
                      $nic = "UDX-";
                  }
                  ?>
                  <td><input style="color:#FFFF00;background-color:#4F0000" type="text" name="nic" value="<?print $nic?>"></td>
              </tr>
              <tr>
                  <td><font size="1">(Beispiel: UDX-Membername)</font></td>
              </tr>
              <tr>
                  <td>Passwort:</td>
                  <td><input style="color:#FFFF00;background-color:#4F0000" type="password" name="pass"></td>
              </tr>
              <tr>
                  <td>Passwort Wiederholung:</td>
                  <td><input type="password" style="color:#FFFF00;background-color:#4F0000" name="pass2"></td>
              </tr>
              <tr>
                  <td>E-Mail:</td>
                  <td><input type="text" style="color:#FFFF00;background-color:#4F0000" name="email" value="<?print $email?>">></td>
              </tr>
              <tr><td colspan="2"><b><br>Member-Daten:</b></td></tr>
              <tr>
                  <td>Vorname:</td>
                  <td><input type="text" style="color:#FFFF00;background-color:#4F0000" value="<?print $vorname?>" name="vorname"></td>
              </tr>
              <tr>
                <td width="18%">Geschlecht</td>
                <td width="78%">
                  <select style="color:#FFFF00;background-color:#4F0000" name="geschlecht">
                  <?
                  if (!isset($geschlecht)) {
                      $geschlecht = "männlich";
                  }
                  ?>        
                    <option value="männlich" <?if ($geschlecht == "männlich") {print "selected";}?>>männlich</option>
                    <option value="weiblich" <?if ($geschlecht == "weiblich") {print "selected";}?>>weiblich</option>
                  </select>
                </td>
              </tr>
              <tr> 
                <td height="20" width="40%"><font face="ExclaimDB" >Geburtsdatum:</font></td>
                <td height="20" width="60%"> <font size="1" face="ExclaimDB"> 
                  <input type="text" style="color:#FFFF00;background-color:#4F0000" name="geb_datum_tag" value="<?print $geb_datum_tag?>" size="5" maxlength="2">
                  <font color="#FFFFFF">(TT). 
                  <input type="text" style="color:#FFFF00;background-color:#4F0000" name="geb_datum_mon" value="<?print $geb_datum_mon?>" size="5" maxlength="2">
                  (MM). 
                  <?
                  if (!isset($geb_datum_jahr)) {
                      $geb_datum_jahr = "19";
                  }
                  ?>
                  <input type="text" style="color:#FFFF00;background-color:#4F0000" name="geb_datum_jahr" size="8" maxlength="4" value="<?print $geb_datum_jahr?>">
                  (JJJJ)</font> </font></td>
              </tr>
          <tr>
                  <td>MSN-Email:</td>
                  <td><input style="color:#FFFF00;background-color:#4F0000" type="text" value="<?print $msn?>" name="msn"></td>
          </tr>
          <tr>
            <td width="18%">SC Lieblings Rasse:</td>
            <td width="78%">
                <select style="color:#FFFF00;background-color:#4F0000" name="sc_rasse">
                  <option value="keine Ahnung" <? if($sc_rasse == "keine Ahnung") {echo "selected";} ?>>keine Ahnung</option>      
                  <option value="Terraner" <? if($sc_rasse == Terraner) {echo "selected";} ?>>Terraner</option>
                  <option value="Protoss" <? if($sc_rasse == Protoss) {echo "selected";} ?>>Protoss</option>
                  <option value="Zerg" <? if($sc_rasse == Zerg) {echo "selected"; }?>>Zerg</option>
                  <option value="ALLE" <? if($sc_rasse == ALLE) {echo "selected";} ?>>ALLE</option>
                </select>
             </td>
          </tr>
              <tr> 
                <td height="20" width="40%"><font>Seid wann spielst Du SC?</font></td>
                <td height="20" width="60%"> <font size="1" face="ExclaimDB">
                  <input type="text" style="color:#FFFF00;background-color:#4F0000" name="sc_datum_mon" size="5" maxlength="2" value="<?print $sc_datum_mon?>"><font color="#FFFFFF">(MM).
                  <input type="text" style="color:#FFFF00;background-color:#4F0000" name="sc_datum_jahr" size="8" maxlength="4" value="<?print $sc_datum_jahr?>"><font color="#FFFFFF">(JJJJ)
          </font> </font> </font></td>
              </tr>
          <tr>
                  <td> <br></td>
          </tr>

          <tr>
                  <td></td>
                  <td><input style="color:#FFFF00;background-color:#4F0000" type="submit" name="new_reg" value="Anmelden"></td>
          </tr>
          </table>
          </form>

          </body>
          </html>
          Ich hoffe das stimmt so halbwegs, denn das ganze ist im Blindflug ergänzt worden. Viel Spaß noch heute Nacht

          Kommentar


          • #6
            :-) FEIN das schaut klasse aus

            Megafein

            DANKE !!! So auf den ersten Blick sieht das alles logisch aus, sollte ich wohl hinbekommen. Werde gleich mal anfangen des alles umzusetzen. Freue mich schon auf den Moment wenn es funktioniert !!!

            Mächtiges Riesen Danke !!!

            Frank

            Kommentar

            Lädt...
            X