2014-04-06 187 views
-1

我有以下的PHP代码从HTML表单获取用户的登录信息:PHP的MySQL数据库连接错误

$con=mysqli_connect("host","user","pass","db"); 

// Check connection 
if (mysqli_connect_errno()) 
    { 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
    } 

$query = "select username from users where user='$_POST[username]' limit1"; 
$result = mysql_query($query); 
echo result; 

但是当我运行它,我似乎得到这些错误:

警告:请求mysql_query()[function.mysql查询]:无法通过插座连接到本地 MySQL服务器 '/目录省略'(2)在 /目录省略第10行

警告:MYS ql_query()[function.mysql查询]:服务器 的链接不能建立在 /目录下省略线10

任何人都可以请大家帮帮忙?非常感谢!

+4

你混合'mysql_ *'和'mysqli_ *' –

回答

1

您有混合mysqlimysql所以有一个错别字很多

代码应该是:

$con = mysqli_connect("host","user","pass","db"); 

// Check connection 
if (mysqli_connect_errno()) { 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
} 

$u = $_POST['username']; 

$sql = "SELECT username FROM users WHERE user='$u' LIMIT 1"; 
$query = mysqli_query($con, $sql); 
if ($row = mysqli_fetch_assoc($query)) { 
    echo $row['username']; 
} 

希望它的工作。

,或者您需要打印的所有行应该是:

while ($row = mysqli_fetch_assoc($query)) { 
    echo $row['username']; 
} 
+0

非常感谢你! – user1049712

+0

完全没问题。 :-) –

1
$query = "select username from users where user='$_POST[username]' limit1"; 
$result = mysql_query($query); 

这些行应该像下面

$query = "SELECT username FROM users WHERE user='".$_POST['username']."' LIMIT 0,1"; 
$result = mysqli_query($con,$query); 
print_r(mysqli_fetch_array($result));