|
You last visited: Today at 20:01
Advertisement
[PHP]Problem mit Registrations Script
Discussion on [PHP]Problem mit Registrations Script within the Web Development forum part of the Coders Den category.
11/15/2012, 12:23
|
#1
|
elite*gold: 727
Join Date: Feb 2012
Posts: 1,206
Received Thanks: 303
|
[PHP]Problem mit Registrations Script
PHP Code:
<?php
$verbindung = mysql_connect("localhost", "u19828_user" , "****")
or die("Verbindung zur Datenbank konnte nicht hergestellt werden");
mysql_select_db("u19828_user") or die ("Datenbank konnte nicht ausgewählt werden");
$username = $_POST["username"];
$passwort = $_POST["passwort"];
$passwort2 = $_POST["passwort2"];
if($passwort != $passwort2 OR $username == "" OR $passwort == "")
{
echo "Eingabefehler. Bitte alle Felder korekt ausfüllen. <a href=\"reg.php\">Zurück</a>";
exit;
}
$passwort = md5($passwort);
$result = mysql_query("SELECT id FROM user WHERE username LIKE '$username'");
$menge = mysql_num_rows($result);
if($menge == 0)
{
$eintrag = "INSERT INTO user (username, passwort) VALUES ('$username', '$passwort')";
$eintragen = mysql_query($eintrag);
if($eintragen == true)
{
echo "<head><meta http-equiv=\"refresh\" content=\"5; URL=index.php\"></head>Benutzername <b>$username</b> wurde erstellt.<br> Du wirst nun weitergeleitet...";
}
else
{
echo "Fehler beim Speichern des Benutzernames. <a href=\"reg.php\">Zurück</a>";
}
}
else
{
echo "Benutzername schon vorhanden. <a href=\"reg.php\">Zurück</a>";
}
?>
Ich bekomme immer, wenn ich auf registrieren dürcke die Meldung: "Fehler beim Speichern des Benutzernames." Heißt hier klappt was nicht: $eintragen = mysql_query($eintrag);
Das Formular dazu:
HTML Code:
<table>
<form action="reg2.php" method="POST">
<tr>
<td>Email:</td><td> <input type="text" name="email" /></td>
</tr>
<tr>
<td>Username:</td> <td><input type="text" name="username" /></td>
</tr>
<tr>
<td>Password:</td><td> <input type="password" name="password" /></td>
</tr>
<tr>
<td>Re-type Password:</td><td> <input type="password" name="re-password" /></td>
</tr>
<tr>
<td></td><td><input type="submit" value="Registrieren" /></td>
</tr>
</form>
</table>
Vielen Dank für jegliche Hilfe!
|
|
|
11/15/2012, 12:35
|
#2
|
elite*gold: 0
Join Date: May 2008
Posts: 1,222
Received Thanks: 500
|
schau mal ob mysql_query nen error auspuckt
$eintragen = mysql_query($eintrag) or die(mysql_error());
|
|
|
11/15/2012, 12:44
|
#3
|
elite*gold: 203
Join Date: Sep 2007
Posts: 732
Received Thanks: 190
|
Es ist nur eine Vermutung:
PHP Code:
mysql_select_db("u19828_user")
Die Datenbank scheint gleich zu heißen, wie der Benutzer. Ist das wirklich so?
|
|
|
11/15/2012, 12:44
|
#4
|
elite*gold: 727
Join Date: Feb 2012
Posts: 1,206
Received Thanks: 303
|
Quote:
Originally Posted by boxxiebabee
schau mal ob mysql_query nen error auspuckt
$eintragen = mysql_query($eintrag) or die(mysql_error());
|
Kommt kein Fehler :/
Quote:
Originally Posted by Mikesch01
Es ist nur eine Vermutung:
PHP Code:
mysql_select_db("u19828_user")
Die Datenbank scheint gleich zu heißen, wie der Benutzer. Ist das wirklich so?
|
Das ist richtig so..  Der Login ist gleich mit der Datenbank .. bzw ich schau nochmal nach
Ne passt so..
|
|
|
11/15/2012, 12:48
|
#5
|
elite*gold: 1
Join Date: Oct 2011
Posts: 660
Received Thanks: 147
|
PHP Code:
$verbindung = mysql_connect("localhost", "u19828_user" , "****") or die("Verbindung zur Datenbank konnte nicht hergestellt werden");
mysql_select_db("u19828_user") or die ("Datenbank konnte nicht ausgewählt werden");
u19828_user <- Ich glaube daran liegt es, benne die mal um.
|
|
|
11/15/2012, 12:52
|
#6
|
elite*gold: 727
Join Date: Feb 2012
Posts: 1,206
Received Thanks: 303
|
Quote:
Originally Posted by Zettabytes*
PHP Code:
$verbindung = mysql_connect("localhost", "u19828_user" , "****")
or die("Verbindung zur Datenbank konnte nicht hergestellt werden");
mysql_select_db("u19828_user") or die ("Datenbank konnte nicht ausgewählt werden");
u19828_user <- Ich glaube daran liegt es, benne die mal um.
|
Ich hab jetzt eine neue DB erstellt. Die neue heißt test. Hab das Skript angepasst. Jetzt kommt: "Unknown column 'passwort' in 'field list'"
|
|
|
11/15/2012, 12:54
|
#7
|
elite*gold: 1
Join Date: Oct 2011
Posts: 660
Received Thanks: 147
|
Quote:
Originally Posted by DasPrinzip.
Ich hab jetzt eine neue DB erstellt. Die neue heißt test. Hab das Skript angepasst. Jetzt kommt: "Unknown column 'passwort' in 'field list'"
|
dann gibt es Passwort nicht, oder hast du es sicher richtig geschrieben bzw erstellt?
Wenn du Skype hast, adde mich mal: zettabytes.epvp
|
|
|
11/15/2012, 13:20
|
#8
|
elite*gold: 727
Join Date: Feb 2012
Posts: 1,206
Received Thanks: 303
|
Ach bin ich ein Doofkopf
Ich hab euch das falsche Formular gegeben :P
HTML Code:
<form action="reg2.php" method="post">
Dein Username:<br>
<input type="text" size="24" maxlength="50"
name="username"><br><br>
Dein Passwort:<br>
<input type="password" size="24" maxlength="50"
name="passwort"><br>
Passwort wiederholen:<br>
<input type="password" size="24" maxlength="50"
name="passwort2"><br>
<input type="submit" value="Abschicken">
</form>
Ach Leute Danke für eure Hilfe. Ich bin so ein Doofi ^^ Ich sollte mir mal angewöhnen entweder passwort oder password zu nehmen :P
|
|
|
11/15/2012, 16:23
|
#9
|
elite*gold: 0
Join Date: Oct 2012
Posts: 71
Received Thanks: 24
|
fehler1 keine namme für submit
Code:
<input type="submit" value="Abschicken">
dein Code Kann so nicht laufen leider wird diese Vorgehensweise oft noch so gelehrt
in schriet 1 musst du erst mit isset überprüfen ob dein Formular überhaupt abgeschickt wurde dazu braust du jetzt den Name von Submit
PHP Code:
if (isset($_POST['submit'])) {
if (isset($_POST["username"]) && Isset($_POST["passwort"]) && isset($_POST["passwort2"])) { $username = $_POST["username"]; $passwort = $_POST["passwort"]; $passwort2 = $_POST["passwort2"]; if ($passwort != $passwort2 || $username == "" || $passwort == "") { echo "Eingabefehler. Bitte alle Felder korekt ausfüllen. <a href=\"reg.php\">Zurück</a>"; exit; } } }
das zu Fehler 2
und jetzt zu Fehler 3
du fragst nun ab ob eine id für den username schon vorhanden ist soweit so gut kann Mann so machen ich wurde es zwar mit count machen
dein Überprüfung ist an dieser stelle der Fehler sie wird nie war werden
den mysql_num_rows liefert dir ja das Ergebnis zurück wenn er aber keine User Findet
kommt gar nichts zurück auch keine 0
PHP Code:
if($menge == 0)
so Ware es richtig in deinen fall
PHP Code:
if($menge[0] == "")
|
|
|
11/15/2012, 16:27
|
#10
|
elite*gold: 727
Join Date: Feb 2012
Posts: 1,206
Received Thanks: 303
|
Quote:
Originally Posted by _robox
fehler1 keine namme für submit
Code:
<input type="submit" value="Abschicken">
dein Code Kann so nicht laufen leider wird diese Vorgehensweise oft noch so gelehrt
in schriet 1 musst du erst mit isset überprüfen ob dein Formular überhaupt abgeschickt wurde dazu braust du jetzt den Name von Submit
PHP Code:
if(isset($_POST['submit'])){
if(isset($_POST["username"]) && Isset("$_POST["passwort"]) && isset($_POST["passwort2"]){ $username = $_POST["username"]; $passwort = $_POST["passwort"]; $passwort2 = $_POST["passwort2"]; if($passwort != $passwort2 || $username == "" || $passwort == "") { echo "Eingabefehler. Bitte alle Felder korekt ausfüllen. <a href=\"reg.php\">Zurück</a>"; exit; } }
das zu Fehler 2
und jetzt zu Fehler 3
du fragst nun ab ob eine id für den username schon vorhanden ist soweit so gut kann Mann so machen ich wurde es zwar mit count machen
dein Überprüfung ist an dieser stelle der Fehler sie wird nie war werden
den mysql_num_rows liefert dir ja das Ergebnis zurück wenn er aber keine User Findet
kommt gar nichts zurück auch keine 0
PHP Code:
if($menge == 0)
so Ware es richtig in deinen fall
PHP Code:
if($menge[0] == "")
|
Ich kapier es nicht, warum manche noch posten obwohl das Problem schon lange behoben ist? Lest ihr euch eigentlich überhaupt mal die Posts der anderen User durch?
Und das Script klappt auch so.. Auch wenn mein Button keinen Namen ala Submit hat.
Trotzdem werden die Inputs weitergegeben und Das 2. Script kann diese Benutzen.
|
|
|
11/15/2012, 16:30
|
#11
|
elite*gold: 0
Join Date: Jun 2010
Posts: 3,406
Received Thanks: 2,024
|
Quote:
den mysql_num_rows liefert dir ja das Ergebnis zurück wenn er aber keine User Findet
kommt gar nichts zurück auch keine 0
|
Falsch, mysql_num_rows liefter im Fehlerfall 0 zurück (bzw. false).
Quote:
so Ware es richtig in deinen fall
PHP-Code:
if($menge[0] == "")
|
Ebenfalls falsch. Nirgends steht ein fetch_row / array
Außerdem sollte man mittels empty() prüfen ob ein Eintrag leer ist und nicht über == "".
PS: Ja ich habe gesehen, dass es behoben wurde. Wollte das nur klar stellen.
|
|
|
11/15/2012, 17:00
|
#12
|
elite*gold: 0
Join Date: Oct 2012
Posts: 71
Received Thanks: 24
|
Quote:
Originally Posted by NotEnoughForYou
Falsch, mysql_num_rows liefter im Fehlerfall 0 zurück (bzw. false).
Ebenfalls falsch. Nirgends steht ein fetch_row / array
|
oke du hast recht mein Fehler.
Quote:
Originally Posted by NotEnoughForYou
Außerdem sollte man mittels empty() prüfen ob ein Eintrag leer ist und nicht über == "".
PS: Ja ich habe gesehen, dass es behoben wurde. Wollte das nur klar stellen.
|
das Mann mit empty oder isset prüfen soll ist mir auch klar habe es in diesen Fall nicht extra angegeben.
@DasPrinzip.
das diene Script so sauber lauft kann ich mir so nicht vorstellen wenn ich mir den php code den du gebostet hat anschaue.
da es nur gehen kann wenn du in der php ini einige funktionen wieder eingeschalteten hast die da für notwendig waren was Mann auf gar keinen Fall machen soll.
außerdem solltest du alle anfragen mit mysql_real_escape_string absichern
|
|
|
11/15/2012, 17:08
|
#13
|
elite*gold: 99
Join Date: Apr 2011
Posts: 730
Received Thanks: 236
|
Quote:
@DasPrinzip.
das diene Script so sauber lauft kann ich mir so nicht vorstellen wenn ich mir den php code den du gebostet hat anschaue.
da es nur gehen kann wenn du in der php ini einige funktionen wieder eingeschalteten hast die da für notwendig waren was Mann auf gar keinen Fall machen soll.
|
Beispiel?
Würde mich nur interessieren was du meinst denn ich sehe nichts, was auch nur annähernd eine änderung an der Php.ini vorraussetzen würde Q_Q
|
|
|
11/15/2012, 17:11
|
#14
|
elite*gold: 0
Join Date: Jun 2010
Posts: 3,406
Received Thanks: 2,024
|
Quote:
|
außerdem solltest du alle anfragen mit mysql_real_escape_string absichern
|
Habe ich ihm bereits über pn gesagt, genauso wie die richtige Verwendungsweise von LIKE.
Wie Hiris schon sagte, sieht man dort keine Inhalte die eine Änderung der php.ini vorraussetzen würden.
Da sich das Formular wie das Verarbeitungsscript nicht in einer Datei befinden ist auch ein Prüfen des Submits nicht zwingend notwendig.
|
|
|
11/15/2012, 18:43
|
#15
|
elite*gold: 203
Join Date: Sep 2007
Posts: 732
Received Thanks: 190
|
Quote:
Originally Posted by NotEnoughForYou
Wie Hiris schon sagte, sieht man dort keine Inhalte die eine Änderung der php.ini vorraussetzen würden.
Da sich das Formular wie das Verarbeitungsscript nicht in einer Datei befinden ist auch ein Prüfen des Submits nicht zwingend notwendig.
|
Aber
PHP Code:
if(isset($_POST['submit'])) {
...
}
benötigt eine POST-Variable mit dem Namen 'submit'. Und diese Variable ist doch nicht gesetzt, daher müsste es doch nicht gehn oder irre ich mich?
|
|
|
 |
|
Similar Threads
|
iTunes Registrations Problem
06/18/2012 - Hardware Discussions / Questions - 2 Replies
Tagchen,
Joa ich schon wieder xD
Ich wollte mir einen iTunes Account erstellen um mein iPhone zu updaten etc. naja musste feststellen das ich dafür ne Kreditkarten Nummer angeben muss aber da ich noch keine 18 bin habe ich keine Kreditkarte.
Was soll ich nun tun?
|
Registrations Problem
03/04/2012 - Aion - 3 Replies
Immer wenn ich mich Registrieren will kommt eine Fehler Meldung:
"Der Accountname muss mit einem Buchstaben beginnen und aus 4 bis 14 Kleinbuchstaben und Nummern bestehen. Sonderzeichen sind unzulässig."
Ich verstehe das nicht ganz könnt ihr mir Helfen?
MfG
|
Registrations-Script MD5 Verschöüsselung klappt nicht
09/22/2011 - Off Topic - 10 Replies
Hey elöitepvpers,
wusste nicht wohin damit, also hierrein.
Habe mir ein kleines Regiestrierungsscript zusammengestellt, und will, dass das Passwort per MD5 verschlüsselt auf der Datenbank gespeichert wird.
Alles funktioniert bis auf die MD5 Verschlüsselung...
Kann mir da jemand helfen?
|
Ks4 Registrations problem
07/30/2009 - S4 League - 5 Replies
ich kann mich nicht bei k s4 anmelden da kommt so ne schei ß meldung .
Es währe echt net wenn mir jemand nen acc macht und es per pm zu mir schickt ^^
|
WoWGer Registrations Problem
06/14/2009 - World of Warcraft - 8 Replies
HI,
ich wollte mit WoW auf dem Privat Server: WoWGer anfangen.
Ich habe da schonmal eine Zeitlang gespielt jedoch wurde der Account gelöscht, und nun haben die diesen Test...den ich nicht packe auch wenn ich alles gelesen habe.
Nun wollte ich fragen ob mir jemand die Lösungen verraten könnte.
schonmal Danke im vorraus!
|
All times are GMT +2. The time now is 20:01.
|
|