TheJjokerR
Gebruiker
- Lid geworden
- 25 apr 2008
- Berichten
- 104
Ik probeer PHP te leren en het gaat me tot nu toe niet echt goed af, ik blijf fouten krijgen die ik niet begrijp omdat het de ene keer wel werkt en de andere keer niet.
Ik krijg nu deze fouten:
Hij werkt bijna helemaal, hij checked of de naam al bestaat, waneer die bestaat is er geen foutmelding, wat gek is want het word op dezelfde regel(40) gedaan als bij de foutmelding.
Als hij kijkt of het email adres al bestaat werkt het niet, hij negeert het gewoon.
Hier is het deel van de code dat relevant is:
(De regelnummers van de foutmeldingen staan erachter in comment)
Ik denk dat ik er iets mis is met de 3e en 4e regels die je hierboven ziet.
Alvast bedankt.
PS: Hij schrijft wel gewoon naar de database..
Ik krijg nu deze fouten:
Code:
Notice: Trying to get property of non-object in /www/rack111.com/t/h/e/thejjokerr/htdocs/brainless/page_register.php on line 40
Notice: Trying to get property of non-object in /www/rack111.com/t/h/e/thejjokerr/htdocs/brainless/page_register.php on line 53
Notice: Trying to get property of non-object in /www/rack111.com/t/h/e/thejjokerr/htdocs/brainless/page_register.php on line 80
Registration Successful, Welcome new member! You can now login to your new account.
Hij werkt bijna helemaal, hij checked of de naam al bestaat, waneer die bestaat is er geen foutmelding, wat gek is want het word op dezelfde regel(40) gedaan als bij de foutmelding.
Als hij kijkt of het email adres al bestaat werkt het niet, hij negeert het gewoon.
Hier is het deel van de code dat relevant is:
(De regelnummers van de foutmeldingen staan erachter in comment)
PHP:
//Check if username already exists...
$q2 = mysql_query("SELECT * FROM `members` WHERE `username` = '".$_POST['username']."'");
$q3 = mysql_fetch_object($q2);
if(strtolower($q3->username) == strtolower($_POST['username'])) { //Regel 40
die('<div id="post">Sorry, but the username "'.$q3->username.'" is taken, please choose another.</div>');
}
//Check if email is in already in use
//First check if it's a valid email:
if( !strpos($_POST['email'], "@") !== false ) {
die("<div id='post'>Error: Invalid Email.</div>");
}
if( !strpos($_POST['email'], ".") !== false ) {
die("<div id='post'>Error: Invalid Email.</div>");
}
//Now see if it's already in the database:
if($q3->user_email == $_POST['email']) { //regel 53
die('div id="post">The E-Mail adres "'.$q3->user_email.'" is already being used by another user.</div>');
}
//PASSWORD
if(!$_POST['password']) {
die("<div id='post'>Error: Password field was blank</div>");
}
if(!$_POST['verify_password']) {
die("<div id='post'>Error: Verify Password field was blank.</div>");
}
if($_POST['password'] != $_POST['verify_password']) {
die("<div id='post'>Error: The passwords do not match.</div>");
}
if(strlen($_POST['password']) < 6 ) {
die("<div id='post'>Error: Your password is too short. Must be 6 or more characters in length.</div>");
}
//ADD NEW MEMBER
$insert ="INSERT INTO `members` (username, user_password, user_email, user_regdate) VALUES ('".$_POST['username']."', '".md5($_POST['password'])."', '".$_POST['email']."', '".date('d/m/Y-H:i:s')."')";
$insert2 = mysql_query($insert);
if(!$insert2) die(mysql_error());
echo("<div id='post'>Registration Successful, Welcome new member! You can now login to your new account. $q3->username </div>"); //Regel 80
Ik denk dat ik er iets mis is met de 3e en 4e regels die je hierboven ziet.
Alvast bedankt.
PS: Hij schrijft wel gewoon naar de database..
Laatst bewerkt: