Prozess Datei Registrierungsprozess die zweite



  • Hi,

    wenn die Variablen leer sind, dann hat das erstma nix mit mySQL zu tun, sondern damit, dass deine Variablen beim senden des Formulars nicht übergeben werden.

    Poste doch ma den Code von dem Anmeldeformular.

    mfg
    Arskane



  • Vielleicht hilft das.

    //registrierungs formular
    <form action="registrierung....php" method="post"> 
                  <p align="left" class="blue"> 
                    <input type="text" name="eins">
                    e-mail Adresse (*)</p>
                  <p align="left"> 
                    <input type="text" name="zwei">
                    <span class="blue">Passwort (*)</span></p>
                  <p align="left"> <span class="blue"> 
                    <input type="text" name="drei">
                    Nachname (*)</span></p>
                  <p align="left"> <span class="blue"> 
                    <input type="text" name="vier">
                    Vorname (*)</span></p>
                  <p align="left"><font color="#333333">(*) erforderliche Daten</font></p>
                  <p align="left"> 
                    <input type="submit" name="Send" value="Registrieren">
                  </p>
                </form>
    
    //Registrierungs Prozess
    <?
    //Verbindet zu Datenbank 
    $connectionid  = mysql_connect ("localhost", "root", ""); 
    if (!mysql_select_db ("loginsystem", $connectionid)) 
    { 
      die ("Keine Verbindung zur Datenbank"); 
    } 
    $benutzer[$i] ["Nickname"] = "$eins"; 
    $benutzer[$i] ["Kennwort"] = "$zwei"; 
    $benutzer[$i] ["Nachname"] = "$drei"; 
    $benutzer[$i] ["Vorname"] = "$vier"; 
    
    foreach($benutzer as $key =>$value) 
    { 
      $sql = "INSERT INTO ". 
        "benutzerdaten (Nickname, Kennwort, Nachname, Vorname) ". 
      "VALUES ('".$value["Nickname"]."', '". 
                           md5 ($value["Kennwort"])."', '". 
                           $value["Nachname"]."', '". 
                           $value["Vorname"]."')"; 
      mysql_query ($sql); 
    
      if (mysql_affected_rows ($connectionid) > 0) 
      { 
        echo "Benutzer erfolgreich angelegt.<br>\n"; 
      } 
      else 
      { 
       echo "Fehler beim Anlegen der Benutzer.<br>\n"; 
      } 
    } 
    ?>
    
    //Login Formular
    <form action="....php" method="post">
            <span class="blue">e-mail:</span> 
            <input type="text" name="name" size="8">
            <span class="blue"> Kennwort:</span> 
            <input type="password" name="pwd" size="8">
            <input type="submit" value="Login"> 
    </form>
    
    //Prozess Datei für Login
    <?php 
    session_start (); 
    $connectionid = mysql_connect ("localhost", "root", ""); 
    if (!mysql_select_db ("loginsystem", $connectionid)) 
    { 
      die ("Keine Verbindung zur Datenbank"); 
    } 
    $sql = "SELECT ". 
        "id, Nickname, Nachname, Vorname ". 
      "FROM ". 
        "benutzerdaten ". 
      "WHERE ". 
        "(Nickname = '".$_REQUEST["$name"]."') AND ". 
        "(Kennwort = '".md5 ($_REQUEST["$pwd"])."')"; 
    $result = mysql_query ($sql); 
    if (mysql_num_rows ($result) > 0) 
    { 
      $data = mysql_fetch_array ($result); 
      $_SESSION["user_id"] = $data["id"]; 
      $_SESSION["user_nickname"] = $data["Nickname"]; 
      $_SESSION["user_nachname"] = $data["Nachname"]; 
      $_SESSION["user_vorname"] = $data["Vorname"]; 
    
    header ("Location: index.php"); 
    } 
    else 
    { 
      header ("Location: login.php?fehler=1"); 
    } 
    ?>
    
    //Einbindung dieses Codes in jede Seite
    <?php session_start (); ?> 
    <?php 
    include ("online.php"); 
    ?>
    
    //online.php
    <?php 
    session_start (); 
    if (!isset ($_SESSION["user_id"])) 
    { 
      header ("Location: login.php"); 
    } 
    ?>
    

    m.f.g.

    Ich danke schonmal im vorraus allen Helfern.



  • Hi,

    uhm, da hab ich ma wieder zu schnell gelesen vorhin ,)
    Du must bei \_REQUEST['name'] des $-Zeichen rausnehmen also in: $_REQUEST['name'] ändern, beim passwort genau dasselbe, dann müsste es klappen.

    mfg
    Arskane



  • Ne das ist es wahrscheinlich nicht weil ohne hab ich es auch schon laufen gehabt.

    m.f.g.



  • Hi,
    wenn die Vars immer noch nicht übergegen werden, gib mal phpinfo(); ein und schau wo deine Vars abgeblieben sind...

    MfG

    Alexander Sulfrian



  • Hi,

    hm, dann fällt mir grad nix mehr ein, sry, kannst ja mal spasseshalber das $_REQUEST durch $_POST ersetzen, wobei das IMHO auch nichts ändern dürfte. Aber es liegt auf jeden Fall daran, dass entweder keine Variablen übergeben werden, oder diese falsch ausgelesen werden.

    mfg
    Arskane



  • Am besten schicke ich dir morgen mal das ganze Paket oder poste hier nen Link.
    Wäre schönn wenn du dir das ganze nochmal selber anschauen könntest.

    m.f.g.



  • du sollst es doch auch rausnehmen 😕



  • @flender

    Ich habs doch schon rausgenommen.
    Was meinst du?



  • Arskane schrieb:

    Du must bei \_REQUEST['name'] des $-Zeichen rausnehmen also in: $_REQUEST['name'] ändern, beim passwort genau dasselbe, dann müsste es klappen.

    HarlekinAlpha[:] schrieb:

    Ne das ist es wahrscheinlich nicht weil ohne hab ich es auch schon laufen gehabt.



  • So ich hab das ganze mal zum Paket gemacht.
    Download hier.

    Download!

    Und mein xampp Paket ist von:
    http://www.apachefriends.org
    m.f.g.

    P.S. Please help 🙂



  • Kurz zu Erklärung der Dateien:

    login.php Die Login Datei
    login-prozess.php Wichtig! Datei für den Login Prozess wird von Login.php angesprochen.

    registrieren.php Die Datenbank eintragungs Datei (funzt)
    intern.php unwichtig wird nach erfolgreichem login aufgerufen
    logout.php Der logout ist erstmal unwichtig
    registrierung-succes.php Prozess Datei
    checkuser.php Die Checkuser wird für die anzeige von Intern genutzt.

    Schritte:

    Erstelle Datenbank mit 5 Werten.
    1=id(auto_inr),2=Nickname,3=Kennwort,4=Nachname,5=Vorname
    Zahlen beziehen sich auf Felder Reihenfolge.

    registrieren.php ausführen (alle Dateien müssen in gleichen Verzeichnis sein.)
    Meldung abwarten /(Benutzer erfolgreich angelegt.)

    3.Login.php starten und versuchen des Login und hier kommt der Fehler.

    Bin gerade auf der Arbeit und suche aber ich finde keinen größereen Fehler.

    m.f.g.



  • wenn ich über den link gehe, sehe ich eine exe?

    lerne, daß man keine exen zum download anbietet.. außer, du bist langjähriges forenmitglied, und hast einen guten ruf!
    zum zweiten: was um gottes willen sollen linux user mit einer exe? *g*
    lerne debuggen, das bedeutet zum bleistift: kommentiere alles unnötige aus und arbeite dich langsam zum fehler vor.
    stelle dann -wenn du den fehler immernoch nicht in den griff bekommst- den entsprechenden abgespeckten codeschnipsel dem forum vor.
    dann wird ein schuh draus.

    so long.



  • Also bis jetzt bist du einer der User die mir am wenigsten geholfen haben und einer derjenigen die am meisten Nebensächliches geschrieben haben.

    Aber ich zippe das ganze nochmal.



  • userin, und ich will dir nur beibringen, wie man sich in einem forum bewegt.

    so long.



  • Ich hoffe ihr habt alle die Möglichkeit eine ZIP Datei zu öffnen denn rar hab ich gerade nicht installiert.

    Zip Datei downlaod

    m.f.g.



  • @elise
    Ich nehme deine Ratschläge ja auch gerne an aber nebenbei wäre es dann auch nett wenn du mir in meiner Hilflosigkeit auch nennen könntest was zum Beispiel beim Code falsch ist.
    Dann können wir das ja zusammen analysieren.
    Erst erzählst du was von schreib den Code selber, dann hänge ich mich rein und nach 2 Tagen verlangst du das ich in meinem Kopf ein MYSQL Kompendium abgespeichert habe.
    Ich habe auch noch andere Dinge zu tun. Und in den Quellcode kommt zum Schluss eh, ein Kommentar in dem auf Wunsch alle NAmen vermerkt werden von Personen die geholfen haben.
    Ich hoffe jetzt verstehst du mich. Wenn nicht dann lass bitte deine Kommentare.

    m.f.g.



  • klar versteh ich dich.

    es ist einfach, gesamten quellcode zum download anzubieten, und den fehler andere suchen zu lassen.
    da bist du nicht der einzige 😉

    nur: a: lernst du so nix dabei..
    und b: andere machen deine arbeit.

    es ist immer besser, selber debuggen zu lernen. ein forum ist meist überfordert, wenn alle ihre ganzen quellcodes posten, oder zum download anbieten.

    na ja, solange du jemand findest, der sich die mühe macht, alles durchzuschaun... es liegt natürlich in der verantwortung des einzelnen, bzw. in der zeit, die jemand investieren kann.

    viel glück.

    nix für ungut, klappt ja bis jetzt ganz gut.



  • Wüßte ich nicht das du ne Userin bist dann hätte ich jetzt gesagt das du ne mänliche Zicke bist.
    Leider muß ich dir sagen das es im Gegensatz zu dir Menschen gibt die nicht im Schlaf lernen und auch nicht so super talentiert sind.
    Die Frage der Hilfe sollte ich vielleicht demnächst nur an Männer richten denn die scheinen sehr viel kammeradschaftlicher zu sein als du.
    Was mich aber am meisten stört ist, dass du nichts löst aber zu allem deinen Senf dazu gibst.
    Dann laß meine Postings doch einfach und zicke woanders rum.
    Ich habe geschrieben ich brauche Hilfe und nicht gezicke.
    Und zum Glück gibt es hier auch noch User die wirklich helfen.
    Ich muß mich nicht dafür entschuldigen, dass ich erst seit kurzem in diesem Forum bin und die Spielregeln noch nicht richtig kenne.
    Du trägst ziemlich dick auf, dafür das du nur kritisieren kannst und manchmal sogar noch google->Links postest.
    Aber bitte laß dann meine Postings in Ruhe.

    Sag bitte nichts mehr.

    m.f.g.



  • Der Fehler steckt hier:

    $sql = "SELECT ". 
        "id, Nickname, Nachname, Vorname ". 
      "FROM ". 
        "benutzerdaten ". 
      "WHERE ". 
        "(Nickname = '".$_POST["name"]."') AND ". 
        "(Kennwort = '".md5 ($_POST["pwd"])."')"; 
    
    echo "$name";  //Ausgabe klappt die Daten sind aus dem vorigen Formular
    echo "$pwd";   //Ausgabe klappt die Daten sind aus dem vorigen Formular
    
    echo "$Nickname"; //Ausgabe klappt nicht keine Daten vorhanden
    echo "$Kennwort"; //Ausgabe klappt nicht keine Daten vorhanden
    

    Hat noch jemand ne Idee?
    Kann es am Input Type Passwort liegen?

    m.f.g.


Anmelden zum Antworten