Search the Community
Showing results for tags 'wamp mysql mysqli'.
-
I am trying to take user input and check to see if it is already in a database. The function isUnique($userName, $link) takes the arguments of the given username and a link to the database, and returns true if the username is already in the column userid in the table login. Problem is the function always returns true. Here is the entire program ommiting parts that I believe cannot possible effect the situation here. <?php /*This function checks to see if the username is already in use INPUT: the userName to check for and a link to the database OUTPUT: true if there are no other users registered with userName */ function isUnique($userName, $link) { $result = !!mysqli_fetch_row(mysqli_query($link, 'SELECT `userid` FROM `login` WHERE `userid` = \''.$userName.'\'')); return $result; } echo '<html><head><title>testing</title><body>'; $uName = $_POST['us']; $pass = $_POST['pa']; //database work $link = mysqli_connect("localhost:3306", "root", ""); if(!$link) die('Could not connect to MySQL: '.mysql_error()); $db_selected = mysqli_select_db($link, 'Accounts'); if(!$db_selected) die('Can\'t use Accounts: '.mysql_error()); echo '<br />Using Accounts database<br />'; if(isUnique($uName, $link)) { echo 'username is unique!<br />'; } else { echo 'username is not unique!<br />'; } mysqli_close($link); echo '</body></html>'; ?> "username is not unique!" is always displayed. I also tried this code and it outputs: $query = mysqli_query($link, 'SELECT `userid` FROM `login` WHERE `userid` = \''.$userName.'\''); if(!$query) { printf("Error: %s\n", mysqli_error($link)); } //else // echo '<br />Query: '.$query.'<br />'; $result = mysqli_fetch_row($query); printf("Select returned %d rows.\n", mysqli_num_rows($result)); I'm using the latest version of WAMP. Thanks in advance.