我正在尝试从数据库中获取值。如果此值等于1,则需要显示文本" One"。
但是我的脚本无效。要检查sql语句的结果是否等于1,我使用以下部分:
if ($result==1)
{
echo 'One';
}
但这是我得到的结果:
else
{
echo 'None';
}
我认为$result==1
不代表整数。
有人知道如何让这个脚本有效吗?
以下是我脚本的其他部分:
<?php
$user_name = "root";
$password = "";
$database = "db";
$server = "localhost";
$db_handle = mysql_connect($server, $user_name, $password);
$db_found = mysql_select_db($database, $db_handle);
if ($db_found) {
$result =mysql_query("SELECT id FROM users WHERE user_id=1");
if ($result==1)
{
echo 'One';
}
if ($result==2)
{
echo 'Two';
}
if ($result==3)
{
echo 'Three';
}
else
{
echo 'None';
}
}
else {
print "Database NOT Found.";
mysql_close($db_handle);
}
?>
答案 0 :(得分:1)
更改为:
$result =mysql_query("SELECT id FROM users WHERE user_id=1");
$count = mysql_num_rows($result);
if ($count == 1) {
echo 'One';
}
等等
注意: - 不推荐使用mysql扩展程序,将来会删除它:使用mysqli或PDO代替
如果您需要sql中的确切值,请使用以下代码:
$res = mysql_fetch_row($result);
if ($res[0] == 1) {
echo 'One';
}
答案 1 :(得分:0)
请试一试。
<?php
$user_name = "root";
$password = "";
$database = "db";
$server = "localhost";
$db_handle = mysql_connect($server, $user_name, $password);
$db_found = mysql_select_db($database, $db_handle);
if ($db_found) {
$result =mysql_query("SELECT id FROM user WHERE user_id = 1");
$result = mysql_fetch_array($result);}
if($result){
echo $result['id'];
}
else
{
echo 'None';
}
mysql_close($db_handle);
?>