Username Überprüfung

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

  • Username Überprüfung

    Ich arbeite an einem Script, dass bei einer Registrierung eines neuen Users aus einer Textdatei ausliest, ob Username vorhanden und wenn ja, soll ein echo "User vorhanden"; kommen.

    Weiß jemand darüber Bescheid? Kann mir jemand so einen Codeschnipsel bitte geben?

    Code für Datei auslesen und hineinschreiben habe ich schon
    Brauche also nur if... und echo"User vorhanden";

    PHP-Code:
    $fp fopen("user.txt","a");

       if (
    $fp)
       {
          
    flock ($fp,2);
          
    $split chr(13) . chr(10);
          
    fputs ($fp"$username|$password|$firstname|$surname|$email$split");
          
    flock ($fp,3);
          
    fclose ($fp);
       }
       else {
              echo 
    "Datei konnte nicht zum Schreiben geöffnet werden! (CHMOD != 777)";
            } 
    Zuletzt geändert von alexs; 19.04.2004, 18:58.

  • #2
    wer suchet der findet..

    Kommentar


    • #3
      Ich habe jetzt folgendes zusammengesucht und entwickelt, funktioniert aber nicht (ICH BIN AM VERZWEIFELN):

      PHP-Code:
      //Username bereits vorhanden?
           
      $file fopen("user.txt","r");
           while(
      $line=fgets($file,1000)) {
           
      $arr explode("|",$line);
                                      }
        if(
      $arr[0]=="$usernameor $arr[4]=="$email") {
           echo 
      "<center>Achtung! Username oder eMail bereits vorhanden.<br>$history_back</center>";
        exit;
        } 

      Kommentar


      • #4
        1.) Ist die Zeile größer als 1000 Zeichen?
        2.) Sind die einzelnen Felder mit | getrennt?
        3.) was ergibt:
        PHP-Code:
        print_r($arr); 
        Wird dann ja wohl leer sein....

        4.) Wenn die Werte haben dann überprüfen ob
        $username und $email Werte haben

        5.) Da diese Anmeldeinfos von einem Formular kommen, $_POST['username'] z.B. verwenden anstatt $username
        [color=blue]MfG Payne_of_Death[/color]

        [color=red]Manual(s):[/color] <-| PHP | MySQL | SELFHTML |->
        [color=red]Merke:[/color]
        [color=blue]Du brauchst das Rad nicht neu erfinden ! [/color]<-ForumSuche rettet Leben-> || <-Schau in den Codeschnippsels->

        Murphy`s Importanst LAWS
        Jede Lösung bringt nur neue Probleme
        Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht.
        In jedem kleinen Problem steckt ein großes, das gern raus moechte.

        Kommentar


        • #5
          Hi, Du untersuchst das Array $line zu spät.

          PHP-Code:
          //Username bereits vorhanden?
               
          $file fopen("user.txt","r");
               while(
          $line=fgets($file,1000)) {
               
          $arr explode("|",$line);
               if(
          $arr[0]=="$usernameor $arr[4]=="$email") {
                  echo 
          "<center>Achtung! Username oder eMail bereits vorhanden.<br>$history_back</center>";
                  exit;
          }


          Hoffe, so geht es.

          Gruß

          Kommentar


          • #6
            Die Username Überprüfung geht jetzt :

            PHP-Code:
            //Username bereits vorhanden?
              
            $file fopen("user.txt","r");
              while(
            $line=fgets($file,300)) {
              
            $arr explode("|",$line);

              if(
            $_POST['username']=="$arr[0]") {
                 echo 
            "<center>Achtung! Username bereits vorhanden.<br>$history_back</center>";
              exit;
                                                }
                                            } 
            *freu* DANKE, DANKE, DANKE

            Nun soll noch abgefragt werden ob die email vorhanden ist und
            hierbei habe ich wieder einen BUG

            PHP-Code:
            //Username bereits vorhanden? eMail vorhanden?
              
            $file fopen("user.txt","r");
              while(
            $line=fgets($file,300)) {
              
            $arr explode("|",$line);

              if(
            $_POST['username']=="$arr[0]") {
                 echo 
            "<center>Achtung! Username bereits vorhanden.<br>$history_back</center>";
              exit;
                                                }
              if(
            $_POST['email']=="$arr[4]") { //$arr[4] = email, habe es schon ausprobiert
                 
            echo "<center>Achtung! eMail bereits vorhanden.<br>$history_back</center>";
              exit;
                                                }

                                            } 

            Kommentar


            • #7
              und was für einen, wenn man fragen darf? Ich habe meine Kristalkugel grad nicht griffbereit....

              Kommentar


              • #8
                Es sieht nun so aus, dass wenn $email==$arr[4] ist, kein echo erscheint... komischer Weise....

                Kommentar


                • #9
                  tut mir leid, ich sehe dahingehend keinen Fehler in Deinem Code.....

                  Gruß

                  Kommentar


                  • #10
                    PHP-Code:
                    echo '<pre>-'.$_POST['email']."-\n-".$arr[4]."-\n".(int)($_POST['email'] == $arr[4]).'</pre>';
                    if(
                    $_POST['email']=="$arr[4]") { //$arr[4] = email, habe es schon ausprobiert 
                    mach das mal so, was kommt dann raus?
                    Ich denke, also bin ich. - Einige sind trotzdem...

                    Kommentar


                    • #11
                      Die Ausgabe sieht nun folgender Maßen aus:

                      PHP-Code:
                      -asda-
                      [
                      email]-alex@web.de[/email]
                      -
                      0
                      -asda-
                      [
                      email]-alex@web.de[/email]
                      -
                      0
                      -asda-
                      [
                      email]-alex@web.de[/email]
                      -
                      0
                      -asda-
                      [
                      email]-alex@web.de[/email]
                      -

                      Ich komme leider trotzdem jetzt nicht weiter...
                      was hilft mir jetzt die Ausgabe?

                      Kommentar


                      • #12
                        OK, danke für die intensive Hilfe

                        Ich hatte ein Leerzeichen in der Textdatei, dewegen konnte die eMail
                        auch nicht korrekt ausgelsen werden *g*

                        Kommentar


                        • #13
                          Verdammt, es klapppt wieder nicht...
                          Username wird wieder überprüft, aber eMail nicht.
                          Kann mir bitte nochmal jemand unter die Arme greifen?

                          PHP-Code:
                          //Username bereits vorhanden?
                            
                          $file fopen("user.txt","r");
                            while(
                          $line=fgets($file,300)) {
                            
                          $arr explode("|",$line);

                            if(
                          $_POST['username']=="$arr[0]OR $_POST['email']=="$arr[4]") {
                               echo 
                          "<center>Achtung! Username oder eMail exestiert bereits.<br>$history_back</center>";
                            exit;
                                                              }
                                                          } 

                          Kommentar

                          Lädt...
                          X