chriscloyd Posted November 21, 2006 Share Posted November 21, 2006 my register script does not workit checks for ip with this[code]<?php//check ip$check_ip = mysql_query("SELECT * FROM users WHERE ip = '$ip'");//check mysql_queryif(!$check_ip){ $error = 0;} else { $reason = "There is already an account registered with that ip address, If you think this is an error please contact webmaster.<br />"; $error = 1;}?>[/code]but when i register from the same computer witht he same ip it wont set $error to 1 Quote Link to comment Share on other sites More sharing options...
heckenschutze Posted November 21, 2006 Share Posted November 21, 2006 Your checking if the query returns FALSE, its only going to return NULL/FALSE if it fails...Use:[code]<?php//check ip$check_ip = mysql_query("SELECT * FROM users WHERE ip = '$ip'") or die("Error: " . mysql_error());//check mysql_queryif(mysql_num_rows($check_ip) == 0){ $error = 0;} else { $reason = "There is already an account registered with that ip address, If you think this is an error please contact webmaster.<br />"; $error = 1;}?>[/code]Also, its not a good idea to check if the user has registered via an IP addess, What happens if more than one person uses the PC - Or the IP changes? (Since it would most likely be a dynamic IP that the user is using)... Quote Link to comment Share on other sites More sharing options...
Xurion Posted November 21, 2006 Share Posted November 21, 2006 Also, instead of setting a variable $error to 1, just use:[code]if($reason){ //error notification here} else{ //carry on}[/code] Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.