Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 19

Thema: PHP/MYSQL Problem

  1. #1
    Kämpfer
    Gast

    Standard Userlogin realisieren

    Dateien sind mittlerweile weiter unten
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!
    Geändert von Kämpfer (23.10.2009 um 15:48 Uhr)

  2. #2
    Forum Guru Avatar von driver
    Registriert seit
    10.04.2006
    Alter
    34
    Beiträge
    20.729
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: PHP/MYSQL Problem

    und weiter ? ich seh jetzt weder ne aufgabe noch n problem...
    >> die icq-schreiberlinge bitte dies hier beachten



    1679 entdeckte Gottfried Wilhelm Leibniz das Binärsystem, bei einem Gespräch mit seiner Mutter: "Ja..., Nein..., Nein..., Nein..., Ja..., Ja..., Nein..."

  3. #3
    Kämpfer
    Gast

    Standard AW: PHP/MYSQL Problem

    Das Registrierungsformular:
    1. activate.php

    PHP-Code:
    <?php include('connect.php'); 
     
    $id mysql_real_escape_string($_GET['id']); // die aktivierungsid
     
    $query mysql_query("SELECT * FROM user WHERE active = '0' AND activateid = '".$id."'"); // query ausführen
     
    $rows mysql_num_rows($query); // anzahl der ergebnisse
     
     
    if($rows == 1) { // wnen nur eine übereinstimmung
     
      
    $query mysql_query("UPDATE user SET active = '1' WHERE activateid = '".$id."'"); // account aktivieren
      
    if($query) {
       echo(
    'Ihr Account wurde erfolgreich aktiviert. Sie können nun alle Funktionen nutzen.'); // meldung für user ausgeben
      
    }
      else {
       echo(
    'es gab einen Fehler mit der Datenbank.');  // fehler
      
    }
     
     }
     else { 
    // keine übereinstimmung
      
    echo('Ihr Code ist falsch');
     }
    ?>
    connect.php

    PHP-Code:
    <?php
     mysql_connect
    ("db45321""web55""pwd") or die(mysql_error()); 
     
    mysql_select_db("usr_web55_1") or die(mysql_error());
    ?>

    login.php

    PHP-Code:
     <?php session_start(); include('connect.php'); 
     
      if(!empty(
    $_POST['send'])) { // wenn das feld voll ist
     
       
    $user mysql_real_escape_string($_POST['user']); // gegen injections schützen
       
    $pass md5($_POST['pass']); // braucht kein mysql_real_escape_string(), weil es md5 gehasht wird
     
       
    $query mysql_query("SELECT * FROM user WHERE user = '".$user."' AND pass = '".$pass."'"); // query ausführen
       
    $rows mysql_num_rows($query); // anzahl der ergebnisse
       
    if($rows == 1) { // nur wenn es eine übereinstimmung gibt
        
    echo('eingeloggt');
     
        
    // hier können dann noch sessions gesezt werden etwa so: 
        // $_SESSION['sessionname'] = "sessionwert";
     
        
    while($row mysql_fetch_assoc($query)) {
         
    // auf accountaktivierung prüfen
         
    if($row['active'] != 1) {
          echo(
    'Ihr Account wurde noch nicht aktiviert.');
         }
     
        }
     
     
       }
       else {
        echo(
    'nicht eingeloggt');
       }
     
     
      }
      else {
     
     
    // das login
     
    ?>
        <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
         Username: <input type="text" name="user" /><br />
            Passwort: <input type="password" name="pass" /><br />
            <input type="submit" value="login" /> <input type="hidden" name="send" value="1" />
     
        </form>
     
        <?php
      
    }
     
    ?>
    </body>
    </html>

    reg.php

    PHP-Code:
     <?php include('connect.php'); $uid md5(uniqid(mt_rand(), true));  if(!empty($_POST['send'])) { // wenn feld voll ist
     
      // array mit den daten
      
    $arr = array(
           
    'user' => mysql_real_escape_string($_POST['user']),
           
    'mail' => mysql_real_escape_string($_POST['mail']),
           
    'mail2' => mysql_real_escape_string($_POST['mail2']),
           
    'pass1' => $_POST['pass1'],   // nicht md5, weil es sonst der string nicht leer sein kann
           
    'pass2' => $_POST['pass2'], // s. oben
           
    'anrede' => mysql_real_escape_string($_POST['anrede']),
           
    'vorname' => mysql_real_escape_string($_POST['vorname']),
           
    'nachname' => mysql_real_escape_string($_POST['nachname']),
           
    'strasse' => mysql_real_escape_string($_POST['strasse']),
           
    'hausnr' => mysql_real_escape_string($_POST['hausnr']),
           
    'plz' => mysql_real_escape_string($_POST['plz']),
           
    'stadt' => mysql_real_escape_string($_POST['stadt']),
           
    'land' => mysql_real_escape_string($_POST['land']),
           
    'tag' => mysql_real_escape_string($_POST['tag']),
           
    'monat' => mysql_real_escape_string($_POST['monat']),
           
    'jahr' => mysql_real_escape_string($_POST['jahr']),
         );
       
    // array mit fehlern
       
    $err = array(
           
    'user' => false,
           
    'mail' => false,
           
    'mail2' => false,
           
    'pass1' => false,   
           
    'pass2' => false
           
    'anrede' => false,
           
    'vorname' => false,
           
    'nachname' => false,
           
    'strasse' => false,
           
    'hausnr' => false,
           
    'plz' => false,
           
    'stadt' => false,
           
    'land' => false,
           
    'geburtstag' => false,
           
    'pwgleich' => false,
           
    'mailgleich' => false,
           
    'userExists' => false,
           
    'emailExists' => false,
           
    'emailvalid' => false,
           
    'tag' => false,
           
    'monat' => false,
           
    'jahr' => false,
           
    'plzvalid' => false,
           
    'hausnrvalid' => false,
         );
       
    // prüfen ob feld leer ist
       
    if(empty($arr['user']))
        
    $err['user'] = true;
       if(empty(
    $arr['mail']))
        
    $err['mail'] = true;
       if(empty(
    $arr['mail2']))
        
    $err['mail2'] = true;
       if(empty(
    $arr['pass1']))
        
    $err['pass1'] = true;
       if(empty(
    $arr['pass2']))
        
    $err['pass2'] = true;
       if(empty(
    $arr['anrede'])) 
        
    $err['anrede'] = true;
       if(empty(
    $arr['vorname'])) 
        
    $err['vorname'] = true;
       if(empty(
    $arr['nachname'])) 
        
    $err['nachname'] = true;
       if(empty(
    $arr['strasse'])) 
        
    $err['strasse'] = true;
       if(empty(
    $arr['hausnr'])) 
        
    $err['hausnr'] = true;
       if(empty(
    $arr['plz'])) 
        
    $err['plz'] = true;
       if(empty(
    $arr['stadt'])) 
        
    $err['stadt'] = true;
       if(empty(
    $arr['land'])) 
        
    $err['land'] = true;
       if(empty(
    $arr['tag'])) 
        
    $err['tag'] = true;
       if(empty(
    $arr['monat']))
        
    $err['monat'] = true;
       if(empty(
    $arr['jahr']))
        
    $err['jahr'] = true;
       
    // ist hausnr/plz auch eine zahl?
       
    if(!is_numeric($arr['hausnr']))
        
    $err['hausnrvalid'] = true;
       if(!
    is_numeric($arr['plz']))
        
    $err['plzvalid'] = true;
     
     
       
    // sind passwörter und emails gleich?
       
    if($arr['pass1'] != $arr['pass2'])
        
    $err['pwgleich'] = true;
       if(
    $arr['mail'] != $arr['mail2'])
        
    $err['emailgleich'] = true;
     
       
    // prüfen ob username schon existiert
       
    $query mysql_query("SELECT * FROM user WHERE user = '".$arr['user']."'");
       
    $rows mysql_num_rows($query);
       if(
    $rows != 0)
        
    $err['userExists'] = true;
       
    // prüfen ob email schon existiert
       
    $query mysql_query("SELECT * FROM user WHERE mail = '".$arr['mail']."'");
       
    $rows mysql_num_rows($query);
       if(
    $rows != 0)
        
    $err['emailExists'] = true;
     
       
    // hier die email auch eine gültige email, d.h im richtigen format?
       
    $emailpattern '^[_a-zA-Z0-9\-](\.{0,1}[_a-zA-Z0-9\-])*@([a-zA-Z0-9\-]{2,}\.){0,}[a-zA-Z0-9\-]{3,}(\.[a-zA-Z]{2,4}){1,2}$';
                if (!
    ereg($emailpattern$arr['mail']))
                 
    $err['emailvalid'] = true;
     
       
    // wenn irgendein arrayvalue von einem key true ist
       
    if($err['user'] || $err['mail'] || $err['emailwdh'] || $err['pass1'] || $err['pass2'] || $err['anrede'] || $err['emailvalid'] || $err['pwgleich'] || $err['emailgleich'] || $err['nameExists'] || $err['emailExists'] || $err['vorname'] || $err['nachname'] || $err['strasse'] || $err['hausnr'] || $err['plz'] || $err['stadt'] || $err['land'] || $err['tag'] || $err['monat'] || $err['jahr'] || $err['plzvalid'] || $err['hausnrvalid']) {
     
        echo(
    'Bitte füllen Sie die rotmarkierten Felder aus.');
     
        
    // formular nochmal anzeigen und felder markeiren oder value reinschreiben
        
    ?>
     
     
                    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
         <fieldset>
               <label>Useraccountangaben:</label>
              <p>
                    <br />
              </p>
              <p>
                 <label>Gew&uuml;nschter Username*:</label>
                         <input type="text" name="user" <?php if($err['user'] || $err['userExists']) { echo('class="falsefield"'); } else { echo(' value="'.$arr['user'].'"'); }?> />
                 </p>
                  <p>
                         <label>Gew&uuml;nschtes Passwort*:</label>
                         <input type="password" name="pass1" <?php if($err['pass1']) { echo('class="falsefield"'); }?> />
                  </p>
                  <p>
                         <label>Wiederholen*:</label>
                          <br />
                          <input type="password" name="pass2" <?php if($err['pass2']) { echo('class="falsefield"'); }?> />
                  </p>
                  <p>
                          <label>Email*:</label>
                          <br />
                          <input type="text" name="mail" <?php if($err['mail'] || $err['emailvalid'] || $err['mailgleich'] || $err['emailExists']) { echo('class="falsefield"'); } else { echo(' value="'.$arr['mail'].'"'); }?> />
                  </p>
                  <p>
                          <label>Email wiederholen*:</label>
                          <br />
                          <input type="text" name="mail2"  <?php if($err['mail2'] || $err['emailvaild'] || $err['mailgleich'] || $err['emailExists']) { echo('class="falsefield"'); } else { echo(' value="'.$arr['mail2'].'"'); }?> //>
                  </p>
    <br />
    <hr />
    <br />
    <label>Pers&ouml;nliche Angaben*:</label>
    <br /><br />
    <p>
    <select name="anrede" <?php if($err['anrede']) { echo('class="falsefield"'); } else { echo(' value="'.$arr['user'].'"'); }?> >
     <option value="" selected="selected"></option>
                            <option value="Herr">Herr</option>
                            <option value="Frau">Frau</option>
                            </select>
    </p>
    <br />
    <p>
    <label>Vorname*:</label>
                 <input type="text" name="vorname" <?php if($err['vorname']) { echo('class="falsefield"'); } else { echo(' value="'.$arr['vorname'].'"'); }?>  />
    </p>
    <p>
    <label>Nachname*:</label>
                 <input type="text" name="nachname" <?php if($err['nachname']) { echo('class="falsefield"'); } else { echo(' value="'.$arr['nachname'].'"'); }?> />
    </p>
    <p>
    <label>Strasse*:</label>
                 <input type="text" name="strasse" <?php if($err['strasse']) { echo('class="falsefield"'); } else { echo(' value="'.$arr['strasse'].'"'); }?>  />
    </p>
    <p>
    <label>Hausnummer*:</label>
                 <input type="text" name="hausnr"  <?php if($err['hausnr'] || $err['hausnrvalid']) { echo('class="falsefield"'); } else { echo(' value="'.$arr['hausnr'].'"'); }?>  />
    </p>
    <p>
    <label>PLZ*:</label>
                 <input type="text" name="plz" <?php if($err['plz'] || $err['plzvalid']) { echo('class="falsefield"'); } else { echo(' value="'.$arr['plz'].'"'); }?>  />
    </p>
    <p>
    <label>Stadt*:</label>
                 <input type="text" name="stadt"  <?php if($err['stadt']) { echo('class="falsefield"'); } else { echo(' value="'.$arr['stadt'].'"'); }?> />
    </p>
    <br />
    <p>
    <label>Land*:</label>
    <br />
                 <select name="land" <?php if($err['land']) { echo('class="falsefield"'); }?> >
     <option value="" selected="selected"></option>
                            <option value="Deutschland">Deutschland</option>
                            <option value="&Ouml;sterreich">&Ouml;sterreich</option>
         <option value="Schweiz">Schweiz</option>
                            </select>
    </p>
    <br /><br />
    <p>
    <label>Geburtstag*:</label>
    <br />
           <select name="tag" <?php if($err['tag']) { echo('class="falsefield"'); } ?> >
    <option value="" selected="selected"></option>                 <!-- Auswahlfeld Tage-->
    <option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option>
    <option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option>
    <option value="11">11</option><option value="12">12</option><option value="13">13</option><option value="14">14</option>
    <option value="15">15</option><option value="16">16</option><option value="17">17</option><option value="18">18</option>
    <option value="19">19</option><option value="20">20</option><option value="21">21</option><option value="22">22</option>
    <option value="23">23</option><option value="24">24</option><option value="25">25</option><option value="26">26</option>
    <option value="27">27</option><option value="28">28</option><option value="29">29</option><option value="30">30</option>
    <option value="31">31</option>
    </select>
    <select name="monat" <?php if($err['monat']) { echo('class="falsefield"'); } ?> >
    <option value="" selected="selected"></option>                         <!-- Auswahlfeld Monate -->
    <option value="Januar">Januar</option>
    <option value="Februar">Februar</option>
    <option value="M&auml;rz">M&auml;rz</option>
    <option value="April">April</option>
    <option value="Mai">Mai</option>
    <option value="Juni">Juni</option>
    <option value="Juli">Juli</option>
    <option value="August">August</option>
    <option value="September">September</option>
    <option value="Oktober">Oktober</option>
    <option value="November">November</option>
    <option value="Dezember">Dezember</option>
    </select>
     <select name="jahr" <?php if($err['jahr']) { echo('class="falsefield"'); }?> >
    <option value="" selected="selected"></option>                             <!-- Auswahlfeld Jahre -->
    <option value="2000">2000</option>
    <option value="1999">1999</option>
    <option value="1998">1998</option>
    <option value="1997">1997</option>
    <option value="1996">1996</option>
    <option value="1995">1995</option>
    usw...code zu lang
    <p>
    <label>Hausnummer*:</label>
                 <input type="text" name="hausnr" />
    </p>
    <p>
    <label>PLZ*:</label>
                 <input type="text" name="plz" />
    </p>
    <p>
    <label>Stadt*:</label>
                 <input type="text" name="stadt" />
    </p>
    <br />
    <p>
    <label>Land*:</label>
    <br />
                 <select name="land">
     <option value="" selected="selected"></option>
                            <option value="Deutschland">Deutschland</option>
                            <option value="&Ouml;sterreich">&Ouml;sterreich</option>
         <option value="Schweiz">Schweiz</option>
                            </select>
    </p>
    <br /><br />
    <p>
    <label>Geburtstag*:</label>
    <br />
           <select name="tag">
    <option value="" selected="selected"></option>                 <!-- Auswahlfeld Tage-->
    <option value="1">1</option><option value="2">2</option><option 
    <option value="31">31</option>
    </select>
    <select name="monat">
    <option value="" selected="selected"></option>                         <!-- Auswahlfeld Monate -->
    <option value="Januar">Januar</option>
    <option value="Februar">Februar</option>
    <option value="M&auml;rz">M&auml;rz</option>
    <option value="April">April</option>
    <option value="Mai">Mai</option>
    <option value="Juni">Juni</option>
    <option value="Juli">Juli</option>
    <option value="August">August</option>
    <option value="September">September</option>
    <option value="Oktober">Oktober</option>
    <option value="November">November</option>
    <option value="Dezember">Dezember</option>
    </select>
     <select name="jahr">
    <option value="" selected="selected"></option>                             <!-- Auswahlfeld Jahre -->
    <option value="2000">2000</option>
    usw... code zu lang
    </select>
    </p>
    <br /><br />
    <p>
    <input class="absendebutton" type="submit" value="Absenden" />
            <input class="absendebutton" type="reset" value="Abbrechen" />
            <input type="hidden" value="1" name="send" />
               </p>
    </fieldset>
     
    <fieldset>
    </fieldset>
    </form>
     
    <?php
     
    }
    ?>
    </body>
    </html>


    Und noch eine tabelle.sql. Aber mit der komme ich klar, einfach hochladen und gut isses.

    Mein Problem am ganzen Code ist nun, das da zweimal login ist und ich es nicht korrekt zusammenfügen kann, einen Login entfernen.

  4. #4
    Kämpfer
    Gast

    Standard AW: PHP/MYSQL Problem

    Alle zeichen wären 26900 gewesen, leider war es mir nur möglich 20000 maximal zu posten. So sehen teile der Dateien jetzt unvollständig aus, aber sind im Orginal korrekt

  5. #5
    Kämpfer
    Gast

    Standard AW: PHP/MYSQL Problem

    Was mir wichtig ist an diesem Hilfethread!


    1. Eine Datenbankanbindung gemeinsam für Anmelden und Login, User müssen ja nach Registrierung aus der DB abgefragt werden.

    2. Ein Login statt 2

    Das wars auch schon, könnt ihr mir ne Anregung geben, was ich für teile des scriptes in die tonne hauen soll und welche verwendet werden sollten, alle Codes sind vollständig, ausser die reg.php ( dort habe ich nur die langen geburtstagsabfragen (option, select) ) entfernt, weil der Beitrag zu lang war.

  6. #6
    König(in) Avatar von crAzywuLf
    Registriert seit
    03.02.2009
    Beiträge
    1.175
    Danke
    1
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: PHP/MYSQL Problem

    Wieso willst du das Login-Script aus dem ersten Post mit dem Registrierungsscript verknüpfen? Das Registrierungsscript hat doch auch ein Login? Den Login wirste warscheinlich noch anpassen müssen, lies dir die Kommentare mal durch.

    Falls du wirklich Script 1 mit Script 2 verbinden willst, musste warscheinlich Script 1 (Login Script aus dem ersten Post anpassen) auf die MySQL Tabelle vom zweiten Script.

    Das wärs.
    Geändert von crAzywuLf (21.10.2009 um 18:57 Uhr)
    Gruß crAzywuLf

  7. #7
    Kämpfer
    Gast

    Standard AW: PHP/MYSQL Problem

    Na was heisst verbinden, wenn es einen login gibt, dann muss man sich ja auch irgendwie registrieren können. Denn sonst kann ich mich einloggen aber bringt es das.

  8. #8
    König(in) Avatar von crAzywuLf
    Registriert seit
    03.02.2009
    Beiträge
    1.175
    Danke
    1
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: PHP/MYSQL Problem

    Pack das erste Script bei Seite...
    Geh in die Datenbank und prüf nochmal ob die SQL Tabelle vom zweiten Script drin hast. Dann müssteste dich über die reg.php registrieren und über die login.php einloggen können.
    Gruß crAzywuLf

  9. #9
    Kämpfer
    Gast

    Standard AW: PHP/MYSQL Problem

    Aber beim zweiten hat es kein Logout , den möchte ich auch gerne bei meiner Seite haben

  10. #10
    Kämpfer
    Gast

    Standard AW: PHP/MYSQL Problem

    Oh mein Kopf brummt, wenn ich nur wüsste wie ich es anstelle. Kann mir jemand helfen bitte? Das ist det einzigste wo ich nicht weiterkomme

Ähnliche Themen

  1. PHP + MySQL Problem
    Von Walerik im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 35
    Letzter Beitrag: 09.10.2009, 15:50
  2. UTF-8 Problem mit PHP und MySQL
    Von LinuxMan im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 2
    Letzter Beitrag: 10.08.2008, 20:26
  3. MySQL Problem
    Von Gast im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 3
    Letzter Beitrag: 17.02.2006, 18:44
  4. MySQL Problem
    Von onlineuser im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 7
    Letzter Beitrag: 13.06.2005, 22:30
  5. mySQL problem
    Von gelöschter User im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 9
    Letzter Beitrag: 02.11.2004, 00:12

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •