繁体   English   中英

PHP:Mysql查询麻烦

[英]PHP: Mysql query trouble

<?php
    session_start();
    include "dbconnect.php";

     echo "email=".$_SESSION['email'];
    $uid = mysql_query("SELECT uid FROM master WHERE emailid='{$_SESSION['email']}'");
     echo $uid;
?>

sql查询不是woking结果是email = asd @ asda.comResource id#5,它是回显电子邮件而不是uid。

mysql_query方法返回资源,而不是查询结果中的值。

你需要这样做:

$result = mysql_query("SELECT uid FROM master WHERE emailid='{$_SESSION['email']}'");
$uid = mysql_result($result,0);
echo $uid;

在调用mysql_result之前,你应该检查以确保你有一个有效的结果:

$result = mysql_query("SELECT uid FROM master WHERE emailid='{$_SESSION['email']}'");
if (mysql_num_rows($result) > 0) {
    $uid = mysql_result($result,0);
    echo $uid;
} else {
    echo "Error";
}

旁注:您使用的是不推荐使用的mysql_*方法,应切换到mysqli_*PDO

应该获取mysql_query()函数的结果以便在php中使用。 您可以使用 :

mysql_fetch_array()

mysql_fetch_assoc()

mysql_fetch_object()

例如,您可以像这样使用它:

$uid = mysql_query($query);
while($row=  mysql_fetch_array($uid)){
 echo $row[1];
}

顺便说一句, 不推荐使用mysql扩展,将来会删除它:使用mysqli或PDO代替

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM