ilch Forum » Ilch Clan 1.1 » Fehlersuche und Probleme » Erweiterte Registrierung

Geschlossen
  1. #1
    User Pic
    chisun Mitglied
    Registriert seit
    11.08.2009
    Beiträge
    44
    Beitragswertungen
    0 Beitragspunkte
    Hallo
    ich brauch für die Registrierung den Vor und Nachnamen, alles kein Problem schreib ich mal noch schnell was in die Tabelle der Datenbank also die Einträge "Vorname" und "Nachname".
    Paar Felder angelegt ..
    Das Problem ist, wenn ich nun auf Registrieren klicke geschieht nichts. Er schickt die Email nicht los und trägt das nicht in die Datenbank ein.
    Nun weiß ich aber, dass das eigentlich alles funktionieren sollte, weil ich das auch bei neuen User im Admin bereich anlegen geändert habe. Und da wird auch ohne Probleme ein neuer User angelegt.
    Es wäre ganz toll, wenn mal wer drüber schauen könnte lächeln

    (PS.: ich habe noch einen kleinen Fehler, der jedoch auf das Problem keine Auswirkungen haben sollte. Ich übergebe einen Wert aus einem Roll up menu am Anfang der Registration "kindofuser" den Wert übergebe ich und mach dann mit for each alles klar, so dass es funktioniert .. es funktioniert auch wirklich nur spuckt er mir immer
    "Warning: Invalid argument supplied for foreach() in /mnt/web3/32/09/52141909/htdocs/restudy/include/contents/user/regist.php on line 48"
    als Fehler aus. Ich weiß aber nicht wie es anders geht.)

    es tut mir leid, dass ich den ganzen Quellcode von der regist.php kopiert habe, aber ich kann einfach nicht sagen wo der Fehler sich befindet. Ich denke es müsste irgendwo nach der 86 Zeile sein.

    Die regist.htm befindet sich darunter, nur zur orientierung.

    ...
    
    $kindofuser		=$_POST['kindofuser'];
    
    
    
    defined ('main') or die ( 'no direct access' );
    
    
    
    if ( !isset($_GET['step']) ) { $_GET['step'] = 1; }
    
    
    
    if ( $allgAr['forum_regist'] == 0 ) {
    
      # user duerfen sich nicht registrieren.
    
    	$title = $allgAr['title'].' :: Users :: Keine registrierung möglich';
    
      $hmenu  = $extented_forum_menu.'<a class="smalfont" href="?user">User</a><b> &raquo; </b>Keine Registrierung m&ouml;glich'.$extented_forum_menu_sufix;
    
      $design = new design ( $title , $hmenu, 1);
    
      $design->header();
    
    	$tpl = new tpl ( 'user/login' );
    
    	echo '<b> Der Administrator hat festgelegt das man sich nicht registrieren kann </b>';
    
    	$tpl->set_out('WDLINK','?'.$allgAr['smodul'],0);
    
    	$design->footer();
    
      exit ();
    
    }
    
    
    
    switch ( $menu->get(2) ) {
    
      default :
    
    	  $title = $allgAr['title'].' :: Users :: Registrieren :: Step 1 von 3';
    
        $hmenu  = $extented_forum_menu.'<a class="smalfont" href="?user">User</a><b> &raquo; </b><a class="smalfont" href="?user-regist">Registrieren</a><b> &raquo; </b>Step 1 von 3'.$extented_forum_menu_sufix;
    
        $design = new design ( $title , $hmenu, 1 );
    
        $design->header();
    
    		$tpl = new tpl ( 'user/regist' );
    
    		$tpl->set_out('regeln', bbcode($allgAr['allg_regeln']),0);
    
    		$design->footer();
    
    	  break;
    
    	
    
    	case 2 :
    	$counter= db_result(db_query('SELECT COUNT(matid) FROM prefix_usercheck'));
    	if($counter<10)
    	{$countermod="000".$counter;}
    	elseif($counter<100)
    	{$countermod="00".$counter;}
    	elseif($counter<1000)
    	{$countermod="0".$counter;}
    	else{$countermod=$counter;}
    	$supporter=55;
    	$orderer=99;
    	$jahr=date("y");
    	foreach ($kindofuser	 as $kindofuserp)
    
    	{}
    	if($kindofuserp=='User(1)'){
    		$name=$jahr.$countermod;}
    	elseif($kindofuserp=='Supporter(2)'){
    		$name=$supporter.$countermod;}
    	else{$name=$orderer.$countermod;}
    
    	
    
        $email = '';
        $vorname = '';
        $nachname = '';
    
        if (!empty($_POST['nutz'])) {
    
       	  $name = escape($_POST['nutz'],'string');
    
        }
         if (!empty($_POST['vorname'])) {
    
      		$email = escape($_POST['vorname'],'string');
    
        }
         if (!empty($_POST['nachname'])) {
    
      		$email = escape($_POST['nachname'],'string');
    
        }
    
        if (!empty($_POST['email'])) {
    
      		$email = escape($_POST['email'],'string');
    
        }
    
        
    
        $ch_name = false;
    
        $xname = escape_nickname($name);
    
        if (!empty($name) AND $xname == $name AND 0 == db_result(db_query("SELECT COUNT(*) FROM prefix_user WHERE name = BINARY '".$name."'"),0)) {
    
          $ch_name = true;
    
        }
    
        
    
        if ( empty($name) OR empty($vorname) OR empty($nachname) OR empty($email) OR $name != $xname OR $ch_name == false ) {
    
          $title = $allgAr['title'].' :: Users :: Registrieren :: Step 2 von 3';
    
          $hmenu  = $extented_forum_menu.'<a class="smalfont" href="?user">User</a><b> &raquo; </b><a class="smalfont" href="?user-regist">Registrieren</a><b> &raquo; </b>Step 2 von 3'.$extented_forum_menu_sufix;
    
          $design = new design ( $title , $hmenu, 1);
    
    	    $design->header();
    
    		  if (empty($name) OR empty($vorname) OR empty($nachname) OR empty($email)) {
    
    		    $fehler = $lang['yourdata'];
    
    		  } elseif ($name != $xname) {
    
            $fehler = $lang['wrongnickname'];
    
          } elseif ($ch_name == false) {
    
    		    $fehler = $lang['namealreadyinuse'];
    
    		  }
    
      		$tpl = new tpl ( 'user/regist' );
    
          	$tpl->set('name', $name);
     	$tpl->set('vorname', $vorname);
       	$tpl->set('nachname', $nachname);
    
          	$tpl->set('email', $email);
    
    	  	$tpl->set_out('FEHLER', $fehler, 1);
    
    		  if ( $allgAr['forum_regist_user_pass'] == 1 ) {
    
    		    $tpl->out(2);
    
    		  }
    
    		  $tpl->out(3);
    
        } else {
    
    	  	$pass = genkey(8);
    
          if (!empty($_POST['pass'])) {
    
            $pass = escape($_POST['pass'], 'string');
    
          }      
    
          user_regist ($name,$vorname,$nachname,$email,$pass);
    
          
    
          $tpl = new tpl ('user/regist' );
    
      		$title = $allgAr['title'].' :: Users :: Registrieren :: Step 3 von 3';
    
          $hmenu  = $extented_forum_menu.'<a class="smalfont" href="?user">User</a><b> &raquo; </b><a class="smalfont" href="?user-regist">Registrieren</a><b> &raquo; </b>Step 3 von 3'.$extented_forum_menu_sufix;
    
          $design = new design ( $title , $hmenu, 1);
    
    		  $design->header();
    
    		  $tpl->set_out ( 'NAME', $name, 4 );
    
        }
    
    		$design->footer();
    
    	  break;
    
    }
    
    ?>




    <!-- REGELN -->
    <form action="index.php?user-regist-2" method="POST">
    
    {_lang_attentionplease}:
    <br />
    {regeln}<br><br><br>
      <select name="kindofuser[]" size="0">
    					<option>User(1)</option>
    					<option>Supporter(2)</option>
    					<option>Auftraggeber(3)</option>
    					</select><br><br><br><br>
    					(1): {_lang_explainuser} <br>
    					(2): {_lang_explainsupporter}<br>
    					(3): {_lang_explainauftraggeber}
    
    <br /><br /><input type="submit" value="{_lang_readandok}" name="Yes">
    
    </form>
    {EXPLODE}
    <form action="index.php?user-regist-2" method="POST">
    <input type="hidden" value="Gelesen und einverstanden" name="checked">
    	<table width="100%" border="0" cellspacing="1" cellpadding="3" class="border">
        <tr class="Chead"> 
        <th colspan="2"><b>{_lang_REGISTER}</b><br>	</th>
      </tr><tr>
    	<td colspan="2" class="Cdark">{FEHLER}</td>
    	</tr><tr>
              <td class="Cmite" width="60">{_lang_nickname}</td>
    					<td class="Cnorm"><input type="text" name="nutz" value="{name}" maxlength="15" readonly="readonly"></td>
            </tr><tr>
              <td class="Cmite">{_lang_vorname}</td>
    					<td class="Cnorm"><input type="text" maxlength="100" value="{vorname}" name="vorname"></td>
            </tr><tr>
              <td class="Cmite">{_lang_name}</td>
    					<td class="Cnorm"><input type="text" maxlength="100" value="{nachname}" name="nachname"></td>
            </tr><tr>
              <td class="Cmite">{_lang_mail}</td>
    					<td class="Cnorm"><input type="text" maxlength="100" value="{email}" name="email"></td>
            </tr>{EXPLODE}<tr>
              <td class="Cmite">{_lang_password}</td>
    					<td class="Cnorm"><input type="password" name="pass"></td>
            </tr>{EXPLODE}<tr class="Cdark">
              <td></td>
    					<td><input type="submit" value="{_lang_register}"></td>
            </tr>
          </table>
    </form>
    {EXPLODE}
    {_lang_hello} {VORNAME}<br>
    
    {_lang_yourregistrationwassuccessful}!<br><br>
    {_lang_amailhasbeensenttoyouwithmailandpass}!<br><br>
    {_lang_afteryoureceivedthemail} <a href="index.php?user-2">{_lang_login2}</a>


    Ich würde mich über jede Hilfe freuen, weil ich schon seit 2h den Fehler suche und ihn einfach nicht finden kann, also schonmal danke an denjenigen, der sich meinem Problem angenommen hat.

    LG,

    René

    betroffene Homepage: externer Link
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    SLJ Hall Of Fame
    Registriert seit
    18.05.2004
    Beiträge
    15.492
    Beitragswertungen
    3 Beitragspunkte
    Da liegt dein fehler,... Du packst alles zur var email dazu,...

    if (!empty($_POST[\'vorname\'])) { 
     
            $email = escape($_POST[\'vorname\'],\'string\'); 
     
        } 
         if (!empty($_POST[\'nachname\'])) { 
     
            $email = escape($_POST[\'nachname\'],\'string\'); 
     
        }



    Und ich hoffe das du die user.php im functions ordner auch angepasst hast!


    Zuletzt modifiziert von SLJ am 01.10.2009 - 14:30:27
    externer Link
    Ilch 1.0.4 PHP 7.0 und PDO Fähig na klar lächeln
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    chisun Mitglied
    Registriert seit
    11.08.2009
    Beiträge
    44
    Beitragswertungen
    0 Beitragspunkte
    Vielen vielen Dank,

    ich bin blind!

    aber weil jetzt schonmal der ganze Quelltext dasteht, hat mal wer nen Tip, warum immer
    "Warning: Invalid argument supplied for foreach() in /mnt/web3/32/09/52141909/htdocs/restudy/include/contents/user/regist.php on line 48"
    kommt?

    Das ist hier Zeile 75.

    P.S.: ja hatte ich schon geändert - funktioniert einwandfrei lächeln


    Zuletzt modifiziert von chisun am 01.10.2009 - 14:39:23
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu Fehlersuche und Probleme

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten