php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 06.02.2012, 22:27  
Neuer Benutzer
 
Registriert seit: 06.02.2012
Beiträge: 4
PHP-Kenntnisse:
Anfänger
T4cC0re befindet sich auf einem aufstrebenden Ast
Standard PHP und MYSQL Problem

Also, erstmal Hallo an alle

Ich bin gerade dabei ein Indie-game auf die Beine zu stellen, nun habe ich aber ein Problem: Ich bekomme die Registerpage einfach nicht zum funktionieren :/
Der Login im Spieleclient ansich funktioniert(ist auch die gleiche DB), aber ich möchte die Daten über ein PHP script in die DB schreiben.(eine Registrierung halt :P)

DB struktur:
Tabelle tiw_users:

UserNr, int, autoincrement, primary
UserId, text
LoginHash, text
eMail, text
BetaPass, int
UsedKey, text

Tabelle tiw_keydb:

KeyID, int, autoincrement
tiw_Key, varchar, primary
Used, varchar, default 2
Beta, varchar, default 0

Das soll das script machen:
Es bekommt per POST die strings username, passwort, passwort2, key und mail. Im nächsten schritt soll es gucken ob der username bereits in der DB ist (Table tiw_users) und das funzt auch. Dannach soll er schauen ob der Key in der DB (Table tiw_keydb) ist und schauen ob das Feld "Used" = 2 und das Feld "Beta" = 1 ist. Wenn dann ein ergebnis ungleich 0 kommt soll er die daten eintragen.
Also quasi, in der keydb "Used" = 1 und im tiw_users einen Neuen eintrag mit UsedId = username, LoginHash=md5passwort, eMail = mail, BetaPass = 1, UsedKey = key.

hier mein Script:
PHP-Code:
<title>This is War Preview Register</title>
<?php
$verbindung 
mysql_connect("server""user" "pass")
    or die(
"Verbindung zur Datenbank konnte nicht hergestellt werden");

mysql_select_db("datenbank") or die ("Datenbank konnte nicht ausgewählt werden");

$username $_POST["username"];
$passwort $_POST["passwort"];
$passwort2 $_POST["passwort2"];
$key $_POST["key"];
$mail $_POST["mail"];

if(
$passwort != $passwort2 OR $username == "" OR $passwort == "" OR $key == "" OR $mail ="")
{
    echo 
"Eingabefehler. Bitte alle Felder korekt ausfüllen. <a href=\"register.html\">Zurück</a>";
    exit;
}
$passwort md5($passwort);

$result mysql_query("SELECT UserNr FROM tiw_users WHERE UserId LIKE '$username'");
$menge mysql_num_rows($result);
if(
$menge == false){
 print   
mysql_error();
    
mysql_close($verbindung);
}
if(
$menge == 0)
{

    
$checkstate mysql_query("SELECT KeyID FROM tiw_keydb WHERE `tiw_Key` LIKE '$key' AND `Used` = '2' AND `Beta` = '1' ORDER BY `KeyID`");
    
$mengecheck mysql_num_rows($checkstate);
    if(
$mengecheck == false){
        print   
mysql_error();
        
mysql_close($verbindung);
    }

    if(
$mengecheck != 0)
    {
    
$eintrag1 "UPDATE `tiw_keydb` SET `Used`='1' WHERE `tiw_Key` LIKE '$key'";
    
$eintragen1 mysql_query($eintrag1);
    echo 
mysql_error();
    
$eintrag2 "INSERT INTO tiw_users (UserId, LoginHash, eMail, BetaPass, UsedKey) VALUES ('$username', '$passwort', '$mail', '1', '$key')";
    
$eintragen2 mysql_query($eintrag2);
    echo 
mysql_error();
        if(
$eintragen2 == true)
        {
            echo 
"Benutzername <b>$username</b> wurde erstellt. <a href=\"login.html\">Login</a>";
            
mysql_close($verbindung);
        }
     else
        {
            echo 
"Fehler beim Speichern des Benutzernames. <a href=\"register.html\">Zurück</a>";
           echo 
mysql_error();
            
mysql_close($verbindung);
        }
    }
   else
    {
        echo 
"Key kein Previewkey, oder ungueltig! <a href=\"register.html\">Zurück</a>";
        
mysql_close($verbindung);
    }
}

else
{
    echo 
"Benutzername <b>$username</b> schon vorhanden. <a href=\"register.html\">Zurück</a>";
    
mysql_close();
}
mysql_close($verbindung);
?>

Das script gibt aber immer (außer wenn ich einen bereits vorhandenen username übergebe) "Key kein Previewkey, oder ungueltig!" aus, also wenn der Key in der DB (Table tiw_keydb) und die Felder "Used" = 2 und "Beta" = 1 NICHT zutrifft...

Ich erbete dringenst Hilfe... bin neu in PHP^^
T4cC0re ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 06.02.2012, 22:37  
Erfahrener Benutzer
 
Registriert seit: 08.10.2009
Beiträge: 681
PHP-Kenntnisse:
Anfänger
Harry_X befindet sich auf einem aufstrebenden Ast
Standard

PHP-Code:
if($menge == 0)

??? wann genau hat denn $menge den Wert 0? (rhetorische Frage)
Harry_X ist offline   Mit Zitat antworten
Alt 06.02.2012, 22:40  
Neuer Benutzer
 
Registriert seit: 06.02.2012
Beiträge: 4
PHP-Kenntnisse:
Anfänger
T4cC0re befindet sich auf einem aufstrebenden Ast
Standard

Wenn ""SELECT UserNr FROM tiw_users WHERE UserId LIKE '$username'" keine Rows zurück gibt... damit prüf ich ob der username schon vorhanden ist... Das klappt auch
T4cC0re ist offline   Mit Zitat antworten
Alt 06.02.2012, 23:05  
Erfahrener Benutzer
 
Registriert seit: 08.10.2009
Beiträge: 681
PHP-Kenntnisse:
Anfänger
Harry_X befindet sich auf einem aufstrebenden Ast
Standard

dann ist doch alles okay, oder nicht? lass dir doch an jedem Schritt die Variablen ausgeben, was drin steht, dann siehst du irgendwann selbst, wo was schief läuft
Harry_X ist offline   Mit Zitat antworten
Alt 06.02.2012, 23:12  
Neuer Benutzer
 
Registriert seit: 06.02.2012
Beiträge: 4
PHP-Kenntnisse:
Anfänger
T4cC0re befindet sich auf einem aufstrebenden Ast
Standard

"SELECT KeyID FROM tiw_keydb WHERE `tiw_Key` LIKE '$key' AND `Used` = '2' AND `Beta` = '1' ORDER BY `KeyID`"

Das ist doch vom Prinzip her die gleiche anfrage, aber di will der nciht... Die Syntax is tauch korrekt genau so wie die abgefragten daten.. Ich habe ja extra hier angefragt, da ich es alleine nicht herasfinde...
T4cC0re ist offline   Mit Zitat antworten
Alt 06.02.2012, 23:16  
Erfahrener Benutzer
 
Registriert seit: 08.10.2009
Beiträge: 681
PHP-Kenntnisse:
Anfänger
Harry_X befindet sich auf einem aufstrebenden Ast
Standard

und ich soll jetzt raten, was wo drin steht, wo ich weder die datenbank sehe noch weiß was in den Variablen wirklich drin steht?
Harry_X ist offline   Mit Zitat antworten
Alt 06.02.2012, 23:44  
Neuer Benutzer
 
Registriert seit: 06.02.2012
Beiträge: 4
PHP-Kenntnisse:
Anfänger
T4cC0re befindet sich auf einem aufstrebenden Ast
Standard

Ich hab meinen Fehler gerade durch Zufall gefunden... Ich hatte den Key in $mail und mail in $key gepostet (auf der davorgeschalteten HTML -.-

Naja, ich denke ich bin hier fertig
T4cC0re ist offline   Mit Zitat antworten
Alt 06.02.2012, 23:49  
Erfahrener Benutzer
 
Registriert seit: 08.10.2009
Beiträge: 681
PHP-Kenntnisse:
Anfänger
Harry_X befindet sich auf einem aufstrebenden Ast
Standard

so ein forum wie das hier bringt echt die schlechten Seiten von einem zum Vorschein... zeit zum einstweiligen entschwinden...
Harry_X ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Problem bei Umstellung auf MySQL 5 bettina Datenbanken 13 21.01.2009 10:00
MySQL Problem fkrauthan PHP-Fortgeschrittene 5 25.01.2008 18:18
mysql problem mit LIKE und AND kazuya Datenbanken 10 29.10.2007 21:36
MySQL kodierungs problem Mutatos Datenbanken 0 12.05.2006 20:02
MySQL Problem mit INSERT-Queries Arno Nühm Datenbanken 10 07.04.2006 16:46
Serverumzug - Problem mit MySQL Daten [GE]ReeN Datenbanken 6 28.03.2006 17:02
Mysql / Array Problem marcels PHP Tipps 2006 10 23.03.2006 18:30
MySQL Server startet nicht mehr richtig... Datenbanken 16 03.03.2006 19:40
[Erledigt] MYSQL Problem Datenbanken 4 09.02.2006 15:14
[Erledigt] Mysql + PHP und Datum Problem Datenbanken 11 31.08.2005 12:08
MySQL, PHP und ein großes Problem! Datenbanken 2 27.08.2005 10:51
Suche Tipps für Persormance-Steigerung (Geld für Nützliches) Beitragsarchiv 18 16.08.2005 10:57
[Erledigt] Problem MySQL 3 und 4 PHP-Fortgeschrittene 9 02.08.2005 16:45
[Erledigt] mysql installations problem Datenbanken 4 16.02.2005 18:46
[Erledigt] Mysql Abfrage Problem! PHP-Fortgeschrittene 5 27.11.2004 10:22


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:03 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum