tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
12
ZUGRIFFE
1551
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    scrotum scrotum ist offline Mitglied Gold
    Registriert seit
    Apr 2002
    Ort
    Basel (CH)
    Beiträge
    122
    zum anfang will ich betonen, dass ich extremer php-neuling bin, also bitte bei den antworten umfassende erklärungen abgeben, sonst komm ich nicht draus. vielen dank.

    also ich hab da ein login system, das ich von einem tutorial kopiert habe und das funktioniert auch.

    nur wenn sich meine user registrieren, will ich das sie ihre emailadresse angeben müssen und ihr selber gewähltes passwort noch einmal wiederholen müssen.

    Fragen:
    wie kann ich prüfen ob eine mögliche emailadresse angegeben wurde? also wie kann ich überprüfen, ob ein @ und .com (oder .de oder sonst was) eingegeben wurde.

    und wie kann ich überprüfen ob zweimal das gleiche passwort eingegeben worden ist? und wenn nicht das es dann eine fehlermeldung kommt?

    und wie frage ich ab, ob alle benötigten felder (wie name, passwort, email) ausgefüllt worden sind?

    vielen dank für die antworten schon im voraus.
    Geändert von scrotum (11.08.03 um 18:06 Uhr)
     

  2. #2
    Avatar von bn
    bn bn ist offline Mitglied Brokat
    Registriert seit
    Oct 2002
    Ort
    Berlin
    Beiträge
    395
    1.) am besten überprüft man emailaddys mir einem regulären ausdruck in verbindung mit dem befehl preg_match() (http://de3.php.net/manual/de/function.preg-match.php).

    der reguläre ausdruck für eine emailadresse ist folgender:
    Code :
    1
    
    /^[a-zA-Z0-9_.-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,6}$/

    und wir so angewendet:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    
    if(preg_match("/^[a-zA-Z0-9_.-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,6}$/",$emailadresse))
    {
    //Emailaddy ok
    }
    else
    {
    //Emailaddy fehlerhaft
    }

    2.) ein vergleich findet immer mit dem operator == statt:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    
    if($passwd1 == $passwd)
    {
    //Passwort ok
    }
    else
    {
    //Passwörter stimmen nicht überein
    }

    bloddy
     

  3. #3
    cybergnom cybergnom ist offline Mitglied Silber
    Registriert seit
    Jun 2003
    Beiträge
    92
    wie kann ich prüfen ob eine mögliche emailadresse angegeben wurde?
    also wie kann ich überprüfen, ob ein @ und .com (oder .de oder sonst was) eingegeben
    wurde.
    Das erledigt dieses Codeschnippsel:
    PHP-Code:
    if(eregi("^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3}$",$mail)){
    echo 
    "E-Mailadresse gültig!";
    }
    else {
    echo 
    "E-Mailadresse ungültig!";

    und wie kann ich überprüfen ob zweimal das gleiche passwort eingegeben
    worden ist? und wenn nicht das es dann eine fehlermeldung kommt?
    Folgendermaßen:
    Du überprüfst einfach die beiden Eingaben der Passwort-Felder gegeneinander:

    PHP-Code:
    //zuerst die beiden Variablen mit dem Inhalt der beiden Form-Felder füllen
    $passwd_1 $HTTP_POST_VARS[passwd_1]; //passwd_1 ist der Name des Feldes für die erste Passwort-Eingabe
    $passwd_2 $HTTP_POST_VARS[passwd_2]; //passwd_2 ist der Name des Feldes für die Passwort-Wiederholung

    //dann werden die beiden Felder gegeneinander überprüft
    if ($passwd_1 == $passwd_2) {
    echo 
    "Passwortwiederholung richtig";
    }
    else {
    echo 
    "Passwortwiederholung falsch"
    und wie frage ich ab, ob alle benötigten felder (wie name,
    passwort, email) ausgefüllt worden sind?
    In dem Du die Felder auf Inhalt überprüfst:

    PHP-Code:
    //zuerst wieder die Variablen mit dem Inhalt der Form-Felder füllen
    $feld1 $HTTP_POST_VARS[feld1];
    $feld2 $HTTP_POST_VARS[feld2];

    //dann auf Inhalt prüfen
    if($feld1 == ""){
    echo 
    "Fehler: Feld1 nicht ausgefüllt!";
    }
    else{
    echo 
    "Alles in Butter";
    }

    if(
    $feld2 == ""){
    echo 
    "Fehler: Feld2 nicht ausgefüllt!";
    }
    else{
    echo 
    "Alles in Butter";

    Ich hoffe, ich konnte Dir auf die Sprünge helfen...

    MfG
    cyber
     

  4. #4
    scrotum scrotum ist offline Mitglied Gold
    Registriert seit
    Apr 2002
    Ort
    Basel (CH)
    Beiträge
    122
    vielen dank für die antworten. habe jetzt noch ein problem. jetzt steht z.B. "falsche emailadresse" oder "Passwort nicht korrekt" auf der gleichen seite wie das ganze formular, wie kann ich machen, das man nur den text sieht "falsche emailadresse" ohne das ganze formular. also hier der code, den ich habe:

    PHP-Code:
    <?php
    $db 
    mysql_connect("localhost","root","");
    $res mysql_db_query("datenbank""select * from register");

    if (
    $eintragen) {
        
    $einfugen mysql_query("INSERT INTO register (nachname, vorname, nickname, email, homepage, passwort, passwort2, id, datum) 
    VALUES ('
    $nachname_send', '$vorname_send', '$nickname_send', '$email_send', '$homepage_send', '$passwort_send', '$passwort2_send', NULL, now())");
    }

    if(
    eregi("^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3}$",$email)){
    echo 
    "E-Mailadresse gültig!";
    }
    else {
    echo 
    "E-Mailadresse ungültig!";
    }

    mysql_close($db);
    ?>
    Geändert von Patrick Kamin (12.08.03 um 20:15 Uhr)
     

  5. #5
    cybergnom cybergnom ist offline Mitglied Silber
    Registriert seit
    Jun 2003
    Beiträge
    92
    Also ich würd's so machen:

    Die ganze Abfrageroutine an den Anfang des Scripts stellen.
    Dann prüfen, ob die eMail-Adresse richtig ist.
    Wenn nicht, wird einfach die Fehlermeldung ausgegeben, wenn die Adresse richtig ist,... keine Ahnung ...

    Also so:

    PHP-Code:
    <?php
    $db 
    mysql_connect("localhost","root","");
    $res mysql_db_query("datenbank""select * from register");

    if (
    $eintragen) {
        
    $einfugen mysql_query("INSERT INTO register (nachname, vorname,
     nickname, email, homepage, passwort, passwort2, id, datum) VALUES 
    ('
    $nachname_send', '$vorname_send', '$nickname_send', '$email_send', 
    '
    $homepage_send', '$passwort_send', '$passwort2_send', NULL, now())");
    }

    if(
    eregi("^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3}$",$email)){
    ?>

    Irgendwelches HTML oder vielleich tauch anderes PHP, das gemacht 
    werden soll, wenn die Adresse richtig ist.

    <?php
    }
    else {
    ?>


    <html>
    <head>
    </head>
    <body>
    <h1>eMail falsch******</h1>
    </body>
    </html>


    <?php
    }
    mysql_close($db);
    ?>
    Hoffe, das hilft weiter.

    MfG
    cyber
     

  6. #6
    scrotum scrotum ist offline Mitglied Gold
    Registriert seit
    Apr 2002
    Ort
    Basel (CH)
    Beiträge
    122
    hm, irgendwie funktioniert das nicht so. weiss nicht was ich falsch mache...
     

  7. #7
    cybergnom cybergnom ist offline Mitglied Silber
    Registriert seit
    Jun 2003
    Beiträge
    92
    häng doch mal dein Script als Datei an...
    dann schau ich mal, was sich machen lässt...

    MfG
    cyber
     

  8. #8
    scrotum scrotum ist offline Mitglied Gold
    Registriert seit
    Apr 2002
    Ort
    Basel (CH)
    Beiträge
    122
    ok, so viel quelltext ist das ja nicht, oder was meintest du? mehr als das braucht man ja nicht zu wissen, oder? das ist das ganze registrierungsformular mit php und html:

    PHP-Code:
    <?php
    $db 
    mysql_connect("localhost","root","");
    $res mysql_db_query("datenbank""select * from register");

    if (
    $eintragen) {
        
    $einfugen mysql_query("INSERT INTO register (nachname, vorname,
     nickname, email, homepage, passwort, passwort2, id, datum) VALUES 
    ('
    $nachname_send', '$vorname_send', '$nickname_send', '$email_send', 
    '
    $homepage_send', '$passwort_send', '$passwort2_send', NULL, now())");
    }

    ?>
    //html


    also es soll:
    1. bei den benötigten felder überprüfen ob etwas drin steht
    2. überprüfen ob eine richtige emailadresse eingegeben worden ist (siehe oben)
    3. passwort und passwort2 vergleichen, ob es das gleiche passwort ist.
    Geändert von Patrick Kamin (12.08.03 um 20:16 Uhr)
     

  9. #9
    cybergnom cybergnom ist offline Mitglied Silber
    Registriert seit
    Jun 2003
    Beiträge
    92
    look here:

    http://212.6.196.230/schmid/emailings/scrotum.php

    solte das ganze so aussehen?

    MfG
    cyber
     

  10. #10
    scrotum scrotum ist offline Mitglied Gold
    Registriert seit
    Apr 2002
    Ort
    Basel (CH)
    Beiträge
    122
    genau so . vielen dank.

    und wie komme ich zu dem quellcode****?
     

  11. #11
    cybergnom cybergnom ist offline Mitglied Silber
    Registriert seit
    Jun 2003
    Beiträge
    92
    100 Euro und er gehört Dir!

    Ist im Anhang...

    MfG
    cyber
    Angehängte Dateien Angehängte Dateien
     

  12. #12
    scrotum scrotum ist offline Mitglied Gold
    Registriert seit
    Apr 2002
    Ort
    Basel (CH)
    Beiträge
    122
    ui, kann ich auch in CHF bezahlen?

    vielen vielen dank, jetzt kann ich ruhig schlafen.
    einfach grandios!

    aber ne frage hab ich noch. wie hast du das so schnell hingekriegt? ist ja doch noch ne menge quellcode! mit was für programmen arbeitest du denn?
    Geändert von scrotum (11.08.03 um 21:15 Uhr)
     

  13. #13
    cybergnom cybergnom ist offline Mitglied Silber
    Registriert seit
    Jun 2003
    Beiträge
    92
    klar kannst Du...
    sind aber dann 200 CHF!

    MfG
    cyber
     

Ähnliche Themen

  1. Access: zufällige Auswahl von Fragen + Antworten
    Von sally_86 im Forum Office-Anwendungen
    Antworten: 0
    Letzter Beitrag: 08.03.07, 09:44
  2. Antworten: 7
    Letzter Beitrag: 02.04.06, 18:36
  3. Einfache Konstruktor/Destruktor fragen
    Von mkoeni1 im Forum VisualStudio & MFC
    Antworten: 1
    Letzter Beitrag: 28.02.06, 06:43
  4. Zwei einfache Fragen...
    Von Alex363 im Forum Photoshop
    Antworten: 3
    Letzter Beitrag: 25.10.05, 11:30
  5. Antworten: 2
    Letzter Beitrag: 07.02.05, 17:32