Ankündigung

Einklappen
Keine Ankündigung bisher.

Registrationsformular

Einklappen

Neue Werbung 2019

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

  • Gast-Avatar
    Ein Gast erstellte das Thema Registrationsformular.

    Registrationsformular

    Ich habe da mal ein Formular erstellt mit mysql!!! Da ist aber irgendein fehler drin. Er schreibt die daten irgend wie nicht in die mysql datenbank.
    könnt ihr mir bitte helfen!!!

    Hier die Quellecodes:


    register.php

    Code:
    <?
    include("config.php");
    
    if($a=="register")$ac = "reg";
    if(!$ac)$ac = "non";
    
    if($ac=="non"){
         ?>
    <form action="register.php?a=register" method="POST">
    <table>
    		<td width="200">Vorname</td>
    		<td><input class="textfield" type="text" name="vname"></td>
    		<tr><td width="200">Nachname:</td><td><input class="textfield" type="text" name="nname"></td></tr>
    		<re>
    		<td>Strasse /Nr.</td>
    		<td><input class="textfield" type="text" name="str"></td>
    		</tr>
    		<tr><td>Ort</td><td><input class="textfield" type="text" name="ort"></td></tr>
    <tr><td>Telefon</td><td><input class="textfield" type="text" name="tel"></td></tr>
    <tr><td>E-Mail: </td><td><input class="textfield" type="text" name="post"></td></tr>
    		<tr>
    			<td>Alter</td>
    			<td><input class="textfield" type="text" name="alter"></td>
    		</tr>
    		<tr>
    			<td>Klasse</td>
    			<td><input class="textfield" type="text" name="klasse"></td>
    		</tr>
    	</table>
    <input class="submitbutton" type="submit" value="Anmelden">
    </form>
    <?
    }else if($ac=="reg"){
         if(!$errs){ //Keine Fehler
              if(!$vname)err("Kein Vorname angegeben");     //Richtiger Input?
              if(!$nname)err("Kein Nachname angegeben");
              if(!$str)err("Keine Strasse angegeben");
              if(!$ort)err("Keine Ort angegeben");
              if(!$tel)err("Keine Telefonnummer angegeben");
              if(!$post)err("Keine E-Mailadresse angegeben");
              if(!$alter)err("Keine Alter angegeben");
              if(!$klasse)err("Keine Klasse angegeben");
    
         }
         if(!$errs){ //Keine Fehler, Username frei
              $activator = randstr($activatorlength);
              $time = time();
              $suc = sql("INSERT INTO $tbl_user (vname,nname,str,ort,tel,post,alter,klasse,activator) VALUES ('$vname','$nname','$str','$ort','$tel','$post','$alter','$klasse','$activator')");
              if(!suc)err("SQL-Fehler");
         }
         if(!$errs){
              $mailtext = "
    
    
    text
    
    
    
    Um deinen anmeldung zu aktivieren folge diesem Link:
    
    $url/activate.php?user=$user&activator=$activator
    
    text
    
    
    
    ";
              $suc = sendmail($email,"Deine Anmeldung im IYF 2004 Forum","IYF 2004 Forum <$webmasteremail>",$mailtext,"");
              if(!$suc){
                   err("E-Mail nicht gesendet");
                   $suc = sql("DELETE FROM $tbl_user WHERE user='$user'");
                   if(!$suc)err("Fehlerhafter Eintrag konnte nicht gel&ouml;scht werden");
              }
         }
         if(!$errs){
         ?>
    <h1>Registrierung</h1>
    
    <h2>Registriert:</h2>
    
    text
    <?
         }
    }
    
    if($errs>0){
    ?>
    <h1>Registrierung</h1>
    <?
         listerrs();
    }
    ?>

    activate.php

    Code:
    <?
    include("config.php");
    
    
    if(!$errs){
         if(!$activator)err("Kein Aktivierungs-Code");
         if($activator && strlen($activator)!=$activatorlength)err("Aktivierungs-Code ung&uuml;ltig");
    }
    if(!$errs){
         $c = mysql_fetch_array(sql("SELECT COUNT(*) AS c FROM $tbl_user WHERE user='$user'"));
         $c = $c['c'];
         if($c<1)err("Username nicht vorhanden");
    }
    if(!$errs){
         $realactivator = mysql_fetch_array(sql("SELECT activator FROM $tbl_user WHERE user='$user'"));
         $realactivator = $realactivator['activator'];
         if($realactivator=="ACTIVE")err("Account wurde bereits aktiviert");
    }
    if(!$errs){
         $realactivator = mysql_fetch_array(sql("SELECT activator FROM $tbl_user WHERE user='$user'"));
         $realactivator = $realactivator['activator'];
         if($activator==$realactivator){
              $suc = sql("UPDATE $tbl_user SET activator='ACTIVE' WHERE user='$user'");
              if(!$suc)err("SQL Fehler");
         }else err("Aktivierungs-Code falsch");
    }
    if(!$errs){
         ?>
    <h1>text<?
    }
    
    if($errs>0){
         listerrs();
    }
    ?>

    config.php

    Code:
    <?
    $mysql_db        = "xxxx"; //Name der Datenbank
    $mysql_host      = "62.75.192.145"; //MySQL Host
    $mysql_user      = "xxxx"; // MySQL User
    $mysql_pass      = "xxxx"; //MySQL Passwort
    
    $url             = "http://domain.de/test"; //Verzeichnis für HTTP-Requests (ohne / am ende )
    
    //Namen der Tabellen: 'setup_database.sql' bearbeiten um namen zu &auml;ndern!
    
    
    $tbl_user        = "asd";
    
    
    
    $webmasteremail  = "info@xxxx.de";
    
    $activatorlength = 20; //L&auml;nge des Aktivierungscodes
    
    $cfgincluded = true;
    ?>

    MSQL Input datei

    Code:
    CREATE TABLE `asd` (
      `vname` varchar(30) NOT NULL default '',
      `nname` varchar(30) NOT NULL default '',
      `str` varchar(30) NOT NULL default '',
      `ort` varchar(30) NOT NULL default '',
      `tel` varchar(30) NOT NULL default '',
      `post` varchar(30) NOT NULL default '',
      `alter` varchar(30) NOT NULL default '',
      `klasse` varchar(30) NOT NULL default '',
      PRIMARY KEY  (`vname`),
      FULLTEXT KEY `post` (`post`)
    )



    Danke schonmal im voraus!!!

  • Thice
    antwortet
    Zitat von Mano
    Da ist die Funktion drin zu finden
    ja du Spaßvogel! Der hat die Funktion auch selber geschrieben...
    Ich kann die aber in dem Script hier nirgends finden...


    Einen Kommentar schreiben:


  • Mano
    antwortet
    Du solltest mal überlegen was du sagst. DANKE.

    Einen Kommentar schreiben:


  • imported_Ben
    antwortet
    @mano:
    was willst du sagen?

    das die PHP-funktion rand() gleich der benutzerdefinierten funktion strrand() ist?

    manche leute, die sich zu weit aus dem fenster gelehnt haben, sind auch schon mit schmerzen auf der straße wieder aufgewacht ...

    Einen Kommentar schreiben:


  • Mano
    antwortet
    Ice-Cue:

    Code:
         } 
         if(!$errs){ //Keine Fehler, Username frei 
              $activator = randstr($activatorlength); 
              $time = time(); 
              $suc = sql("INSERT INTO $tbl_user (user,pass,email,activator,time,vname,nname,homepage,uin) VALUES ('$user','$pass','$email','$activator','$time','$vname','$nname','','')"); 
              if(!suc)err("SQL-Fehler"); 
         }
    Da ist die Funktion drin zu finden

    http://de.php.net/rand

    Einen Kommentar schreiben:


  • imported_Ben
    antwortet
    Re: Registrationsformular

    Zitat von Ice-Cue
    Ich habe da mal ein Formular erstellt mit mysql!!!
    du hast es erstellt denk ich ... also weiß du auch, wo die funktion zu finden ist!!

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    weis ich nicht!!!

    ich selber habe nicht so viel ahnung wie viele andere leute!!! wie zumbeispiel du!!! wo finde ich die funktion!!!

    Einen Kommentar schreiben:


  • imported_Ben
    antwortet
    ja und?
    was soll mir das jetzt zeigen?

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    habe diesen quellcode umgeschrieben:

    Code:
    <?
    //register.php
    include("inc/main.inc.php");
    $page_title = getoption("mainoptions","tregister");
    include("inc/head.inc.php");
    
    if($a=="register")$ac = "reg";
    if(!$ac)$ac = "non";
    
    if($ac=="non"){
         ?>
    <h1>Registrierung</h1>
    
    <h2>Anmeldeformular</h2>
    Alle mit * gekennzeichneten Felder sind optional.
    
    Dein Username kann aus folgenden Zeichen bestehen: A-Z, a-z, 0-9, _
    
    
    
    <form action="register.php?a=register" method="POST">
    <table>
    <tr><td width="200">*Vorname/*Nachname: </td><td><input class="textfield" type="text" name="vname"> <input class="textfield" type="text" name="nname"></td></tr>
    <re><td>Username: </td><td><input class="textfield" type="text" name="user">
    </td></tr>
    <tr><td>Passwort: </td><td><input class="textfield" type="password" name="pass"></td></tr>
    <tr><td>Passwort (Wiederholung): </td><td><input class="textfield" type="password" name="pass2"></td></tr>
    <tr><td>E-Mail: </td><td><input class="textfield" type="text" name="email"></td></tr>
    
    </table>
    <input class="submitbutton" type="submit" value="Anmelden">
    </form>
    <?
    }else if($ac=="reg"){
         if(!$errs){ //Keine Fehler
              if(!$user)err("Kein Username");     //Richtiger Input?
              if($user && !isname($user))err("Username ung&uuml;ltig");
              if(!$pass)err("Kein Passwort");
              if(!$pass2)err("Keine Passwort-WH");
              if($pass2 && $pass != $pass2)err("Passwort-WH falsch");
              if(!$email)err("Keine E-Mail Adresse");
              if($email && !isemail($email))err("E-Mail Adresse ung&uuml;ltig");
         }
    
         if(!$errs){ //Keine Fehler, Input OK!
              $c = mysql_fetch_array(sql("SELECT COUNT(*) AS c FROM $tbl_user WHERE user='$user'"));
              $c = $c['c'];
              if($c>0){ //<
                   err("Username ist vergeben");
              }
         }
         if(!$errs){ //Keine Fehler, Username frei
              $activator = randstr($activatorlength);
              $time = time();
              $suc = sql("INSERT INTO $tbl_user (user,pass,email,activator,time,vname,nname,homepage,uin) VALUES ('$user','$pass','$email','$activator','$time','$vname','$nname','','')");
              if(!suc)err("SQL-Fehler");
         }
         if(!$errs){
              $time = time();
              $suc = sql("INSERT INTO $tbl_newsletter (email,letters,user,time)VALUES('$email','0','$user','$time')");
              if(!suc)err("SQL-Fehler");
    
         }
         if(!$errs){
              $mailtext = "
    
    
    
    Dein Username ist: $user
    Dein Passwort ist: $pass
    
    
    $url/activate.php?user=$user&activator=$activator
    
    
    
    
    
    ";
              $suc = sendmail($email,"Deine Anmeldung im IYF 2004 Forum","IYF 2004 Forum <$webmasteremail>",$mailtext,"");
              if(!$suc){
                   err("E-Mail nicht gesendet");
                   $suc = sql("DELETE FROM $tbl_user WHERE user='$user'");
                   if(!$suc)err("Fehlerhafter Eintrag konnte nicht gel&ouml;scht werden");
              }
         }
         if(!$errs){
         ?>
    <h1>Registrierung</h1>
    
    <h2>Registriert:</h2>
    
    Herzlichen Glückwunsch!
    
    
    
    Du wurdest soeben angemeldet! Es wurde eine E-Mail an <? echo html($email)?> gesendet,
    in der du weitere Anweisungen findest, wie du deinen Account aktivieren kannst.
    
    Dieses Fenster kannst du jetzt schliessen.
    <?
         }
    }
    
    if($errs>0){
    ?>
    <h1>Registrierung</h1>
    <?
         listerrs();
    }
    ?>
    <?
    include("inc/headend.inc.php");
    include("inc/mainend.inc.php");
    ?>

    Einen Kommentar schreiben:


  • imported_Ben
    antwortet
    Zitat von Ice-Cue
    mit was muss ich das ersetzen!!!
    falsche reaktion!

    das machst du schön selber.
    außerdem weiß ich immer noch nicht, was das für eine funktion ist ...

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    mit was muss ich das ersetzen!!!

    Einen Kommentar schreiben:


  • imported_Ben
    antwortet
    Zitat von Ice-Cue
    randstr()
    was ist das für eine funktion?

    wo steht sie?
    anscheinend hast du sie entweder nicht implementiert oder nicht eingebunden.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    habe vergessen den fehler darzustellen!!!

    Code:
    Fatal error: Call to undefined function: randstr() in /usr/local/pem/vhosts/12264/webspace/httpdocs/test/register.php on line 46

    Einen Kommentar schreiben:


  • imported_Ben
    antwortet
    Code:
    INSERT INTO $tbl_user (vname,nname,str,ort,tel,post,alter,klasse,activator) VALUES ('$vname','$nname','$str','$ort','$tel','$post','$alter','$klasse','$activator')
    naja .. 'alter' ist ein reserviertes wort. deine tabellenspalte darf so nicht heißen.

    edit:
    http://dev.mysql.com/doc/mysql/de/Reserved_words.html

    Einen Kommentar schreiben:

Lädt...
X