Ergebnis 1 bis 6 von 6

Thema: Registrierung funktioniert nicht

  1. #1
    Meister(in) Avatar von DarkEmperor
    Registriert seit
    23.04.2010
    Ort
    Freital
    Alter
    24
    Beiträge
    356
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings
    Blog-Einträge
    5

    Frage Registrierung funktioniert nicht

    Ich mache so langsam immer mehr mit php ... und bekomme hier gerade wieder nen Anfall!

    Ich bin grad dabei nen Login mit Registrierung zu basteln. Alles an sich hat gefunzt ... bis ich die Benutzerregistrierung formular (Variablen) mäßig gestaltet habe ... seit dem geht Login und so ich bekomme aber das Formular keine neuen Leute rein!

    ...

    HELP PLS

    Formular: eintragsformular.php
    HTML-Code:
    <form action="benutzer_anlegen.php" method="post">
      Name: <input type="text" name="name" size="20"><br>
      Kennwort: <input type="password" name="pwd" size="20"><br>
      Rang: <input type="text" name="rang" size="20"><br>
      <input type="submit" value="Senden">
    </form>
    Verarbeitung: benutzer_anlegen.php
    PHP-Code:
    <?php
    // Definition der Benutzer
    $benutzer[0]["Nickname"] = "'".$_REQUEST["name"]."'" ;
    $benutzer[0]["Kennwort"] = "'".$_REQUEST["pwd"]."'" ;
    $benutzer[0]["Rang"] = "'".$_REQUEST["rang"]."'" ;

    // Sie können an dieser Stelle beliebig viele Benutzer anlegen.
    // Achten Sie dabei nur auf die Fortführung der Nummer.

    // Aufbau der Datenbankverbindung
    $connectionid  mysql_connect ("localhost""darkemperor""PW");
    if (!
    mysql_select_db ("darkemperor"$connectionid))
    {
      die (
    "Keine Verbindung zur Datenbank");
    }

    // Daten eintragen
    while (list ($key$value) = each ($benutzer))
    {
      
    // SQL-Anweisung erstellen
      
    $sql "INSERT INTO ".
        
    "benutzerdaten (Nickname, Kennwort, Rang) ".
      
    "VALUES ('".$value["Nickname"]."', '".
                           
    md5 ($value["Kennwort"])."', '".
                           
    $value["Rang"]."')";
      
    mysql_query ($sql);

      if (
    mysql_affected_rows ($connectionid) > 0)
      {
        echo 
    "Benutzer erfolgreich angelegt.<br>\n";
      }
      else
      {
       echo 
    "Fehler beim Anlegen der Benutzer.<br>\n";
      }
    }
    ?>
    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 DarkEmperor (06.07.2010 um 12:58 Uhr) Grund: PW noch drin gehabt!^^

  2. #2
    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: Registrierung funktioniert nicht

    Hier liegt der Fehler (Die Hochkommas und Anführungszeichen):
    PHP-Code:
    $benutzer[0]["Nickname"] = $_POST["name"]; 
    $benutzer[0]["Kennwort"] = $_POST["pwd"]; 
    $benutzer[0]["Rang"] = $_POST["rang"]; 
    Dann noch ein paar Sachen zu deinem Code:
    - mit $_POST statt $_REQUEST arbeiten
    -
    http://php.net/mysql_real_escape_string (WICHTIG!!! Wenn du denkst, es sei nicht so wichtig dann gib doch mal ein Hochkomma in deinen Benutzernamen ein )
    - IF Abfragen für die Felder damit die nicht leer in Datenbank gehen
    - Außen rum ein:
    PHP-Code:
    if ($_SERVER['REQUEST_METHOD'] == 'POST')
    {
    ...

    Gruß crAzywuLf

  3. #3
    Bandit
    Gast

    Standard AW: Registrierung funktioniert nicht

    Was soll das denn?
    PHP-Code:
    $benutzer[0]["Nickname"] = "'".$_REQUEST["name"]."'" 
    $benutzer[0]["Kennwort"] = "'".$_REQUEST["pwd"]."'" 
    $benutzer[0]["Rang"] = "'".$_REQUEST["rang"]."'" 
    mysql_real_escape_string benutzen! mysql_error einbauen!

    Das habe ich dir auch schon mehrfach gepostet:

    Richtig debuggen
    1. Man bemerkt, dass ein Skript nicht das tut, was es soll.
    2. Man schreibt an den Anfang des Scriptes die Zeile: error_reporting(E_ALL); und ini_set("display_errors", true);
    3. Man versucht, die Stelle die daran Schuld sein kann, schonmal einzugrenzen. Falls dies nicht geht, wird zunächst das komplette Skript als fehlerhaft angesehen.
    4. An markanten Stellen im Skript lässt man sich wichtige Variableninhalte ausgeben und ggf. auch in bedingten Anweisungen eine kurze Ausgabe machen, um zu überprüfen, welche Bedingung ausgeführt wurde (oder auch nicht).
    5. Schritt 3 wird so lange wiederholt, bis Unstimmigkeiten im Skript auffallen
    6. Damit hat man das Problem (Unstimmigkeit) gefunden und kann versuchen diese zu beheben. Hierzu dienen dann die PHP-Dokumentation und andere Quellen als Ratgeber.
    7. Lässt sich das konkrete Problem trotzdem nicht beheben, kann man in Foren um Rat fragen.
    8. Das Programm läuft und man kann die Debug-Ausgaben wieder entfernen.

  4. #4
    Meister(in)
    Themenstarter
    Avatar von DarkEmperor
    Registriert seit
    23.04.2010
    Ort
    Freital
    Alter
    24
    Beiträge
    356
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings
    Blog-Einträge
    5

    Ausrufezeichen AW: Registrierung funktioniert nicht

    Zitat Zitat von crAzywuLf Beitrag anzeigen
    - IF Abfragen für die Felder damit die nicht leer in Datenbank gehen
    Was wäre dann die Bedingung?

    Ich habe in der db ja schon gesagt für alle Felder ein ungleich 0! Reicht das nicht?

    Und Danke! Es geht!

    @ bandit600:
    Jap, sry!!!
    Ich habs vergessen. ich setz grad um alle meine php-Scripts egal ob se funzen oder ni den Spaß drum!
    Dann vergess ich das auch ni mehr. Ich gug bei php mom immer in andre schon fertige Datein um zu sehen wie es geht hab noch nicht wirklich genug auswendig im Kopf um das so zu machen!

    MfG

  5. #5
    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: Registrierung funktioniert nicht

    Zitat Zitat von DarkEmperor Beitrag anzeigen
    Was wäre dann die Bedingung?

    Ich habe in der db ja schon gesagt für alle Felder ein ungleich 0! Reicht das nicht?
    PHP-Code:
    if (!empty($benutzer[0]["Nickname"]))
    {
    // nicht leer
    }
    else
    {
    // leer


    Du solltest dir mal ein paar Tutorials durchlesen, denn dir fehlen Grundlagen!

    Geändert von crAzywuLf (06.07.2010 um 13:53 Uhr)
    Gruß crAzywuLf

  6. #6
    Meister(in)
    Themenstarter
    Avatar von DarkEmperor
    Registriert seit
    23.04.2010
    Ort
    Freital
    Alter
    24
    Beiträge
    356
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings
    Blog-Einträge
    5

    Frage AW: Registrierung funktioniert nicht

    So neues Problem: ^^ SRY
    ...

    An sich funktioniert alles Login, interne Anzeige, Logout, Registrierung
    Aber die interne wird auch angezeigt obwohl ich ni angemeldet bin!

    Link zum Login: http://darkemperor.bplaced.de/filema...?site=formular

    Name: Gast
    PW: gast

    das Script was eig verhindern soll das intern.php angezeigt wird und auf formular.html umleiten soll:
    PHP-Code:
    <?php
    error_reporting
    (E_ALL);

    session_start ();
    if (!isset (
    $_SESSION["user_id"]))
    {
      
    header ("Location: index.php?site=formular");
    }
    ?>
    Die interne Seite:
    HTML-Code:
    <?php include ("checkuser.php"); ?>
    <html>
    <head>
      <title>Interne Seite</title>
    </head>
    <body>
      BenutzerId: <?php echo $_SESSION["user_id"]; ?><br>
      Nickname: <?php echo $_SESSION["user_nickname"]; ?><br>
      Rang: <?php echo $_SESSION["user_rang"]; ?>
      <hr>
      <a href="logout.php">Ausloggen</a>
    </body>
    </html>
    Was isen da schon wieder falsch? oder geht das nicht besser? Eig müsste ja ohne Login vorher das Script die Seitenanzeige verhindern oder?

    MfG

    DANKE im Vorraus

    EDIT:
    hier erstmal die URL der internen Seite!^^ : http://darkemperor.bplaced.de/filemanager/intern.php

    Dann habe ich zumin für die intern.php Seite das Problem geklärt. Indem ich einfach:
    PHP-Code:
    <?php
    error_reporting
    (E_ALL);

    session_start ();
    if (!isset (
    $_SESSION["user_id"]))
    {
      
    header ("Location: index.php");
    }
    ?>
    draus gemacht habe! Jedoch spinnt er noch rum wenn ich die Datei auf einer anderen Seite einbinde!

    ...

    Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /users/darkemperor/www/filemanager/index.php:5) in /users/darkemperor/www/filemanager/checkuser.php on line 4

    Warning: Cannot modify header information - headers already sent by (output started at /users/darkemperor/www/filemanager/index.php:5) in /users/darkemperor/www/filemanager/checkuser.php on line 7
    Das einzige auf was ich grad komme ist, dass ich den head, html, body Tag ausgelagert habe auf diese index.php um Script zu sparen!
    liegt es daran weil der Check vor allem anderen kommen muss? Wenn ja was wäre eine Idee??? Ich müsste dann für die Seiten die intern sind alles in ein Dokument packen was sonst vorher stehen würde oder???
    *hoffe nicht*

    MfG

    EDIT 2:

    JIPPI ... ^^
    endlich ... is gut das keiner geantwortet hat! Ich habs absolut selbst gebuggt bekommen!!! *extrem stolz sei*
    ...
    Ich Depp hab ni dran gedacht das der Spaß nur in ner .php Datei funktioniert! Jetzt mal in eine gesetzt und schwups ... da ging es!^^

    MfG
    Geändert von DarkEmperor (07.07.2010 um 00:13 Uhr)

Ähnliche Themen

  1. Seite funktioniert und funktioniert nicht
    Von parcifal83 im Forum HTML & CSS Forum
    Antworten: 6
    Letzter Beitrag: 24.05.2010, 15:24
  2. Antworten: 6
    Letzter Beitrag: 12.09.2009, 21:02
  3. Domain-Registrierung klappt nicht
    Von nevo87 im Forum Webhoster - Provider - (free) Webspace - Server - Domain
    Antworten: 3
    Letzter Beitrag: 03.05.2009, 22:43
  4. Funktioniert nicht…
    Von SlimShady im Forum HTML & CSS Forum
    Antworten: 5
    Letzter Beitrag: 25.12.2005, 23:43

Stichworte

Berechtigungen

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