PDA

View Full Version : سوال در فرم ثبت نام



mmvalinezhad
یک شنبه 16 شهریور 1393, 19:05 عصر
سلام
خدمت اساتید محترم
از چنین کدی برای بررسی یوزرنیم ثبتنام کننده استفاده می کنم اما ارور زیر را نمایش می دهد.لطفا راهنمایی بفرمایید
Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in /home/camelope/public_html/cloud/check/check_username.php on line 31

فایل index.php


<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Live Username Check</title>
<script type="text/javascript" src="js/jquery-1.9.0.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#username").keyup(function (e) {

//removes spaces from username
$(this).val($(this).val().replace(/\s/g, ''));

var username = $(this).val();
if(username.length < 4){$("#user-result").html('');return;}

if(username.length >= 4){
$("#user-result").html('<img src="imgs/ajax-loader.gif" />');
$.post('check_username.php', {'username':username}, function(data) {
$("#user-result").html(data);
});
}
});
});
</script>
<style type="text/css">
#registration-form {background: #FDFDFD;width: 350px;padding: 20px;margin-right: auto;margin-left: auto;border: 1px solid #E9E9E9;border-radius: 10px;}
</style>
</head>
<body>

<div id="registration-form">
<label for="username">Enter Username :
<input name="username" type="text" id="username" maxlength="15">
<span id="user-result"></span>
</label>
</div>

</body>
</html>


فایل check_username.php
<?php
###### db ##########
$db_username = '5555';
$db_password = '5555';
$db_name = '5555';
$db_host = '666';
################


//check we have username post var
if(isset($_POST["username"]))
{
//check if its ajax request, exit script if its not
if(!isset($_SERVER['HTTP_X_REQUESTED_WITH']) AND strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) != 'xmlhttprequest') {
die();
}

//try connect to db
$connecDB = mysqli_connect($db_host, $db_username, $db_password,$db_name)or die('could not connect to database');

//trim and lowercase username
$username = strtolower(trim($_POST["username"]));

//sanitize username
$username = filter_var($username, FILTER_SANITIZE_STRING, FILTER_FLAG_STRIP_LOW|FILTER_FLAG_STRIP_HIGH);

//check username in db
$results = mysqli_query($connecDB,"SELECT id FROM aaaaaa WHERE username='$username'");

//return total count
$username_exist = mysqli_num_rows($results); //total records

//if value is more than 0, username is not available
if($username_exist) {
die('<img src="imgs/not-available.png" />');
}else{
die('<img src="imgs/available.png" />');
}

//close db connection
mysqli_close($connecDB);
}
?>

godofphp
یک شنبه 16 شهریور 1393, 20:14 عصر
توی این خط چرا $username رو دوباره داخل ' ' گذاشتی ؟


$results = mysqli_query($connecDB,"SELECT id FROM aaaaaa WHERE username='$username'");
اینجوریش کن ببین درست میشه


$results = mysqli_query($connecDB,"SELECT id FROM aaaaaa WHERE username=$username");