首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP if else根据表中存储的ipaddress检查ipaddress

问PHP if else根据表中存储的ipaddress检查ipaddress
EN

Stack Overflow用户
提问于 2011-04-29 05:39:10
回答 3查看 1.4K关注 0票数 1

我有一个快速的小投票和一个查询,用来检查IPaddress是否已经在表中,以了解是否有人已经投票了。我已经创建了表,并且它可以工作。

我的问题是if else语句不起作用。我在努力做到

如果ip地址在表中,则显示字符串,否则显示轮询

代码语言:javascript
复制
$ip=$_SERVER['REMOTE_ADDR'];

include("../db/config.php");
include("../db/opendb.php");

$result = mysql_query("SELECT * FROM Poll WHERE ip='$ip'");

if ($result==$ip) {
    echo "Thank you for voting.";
} else {
    echo "<form action=logvote.php method=post>" .
         "<input type=radio name=ans value=ans1> Answer1<br>" .
         "<input type=radio name=ans value=ans2> Answer2<br>" .
         "<input type=radio name=ans value=ans3> Answer3<br>" .
         "<input type=radio name=ans value=ans4> Answer4<br>" .
         "<input type=submit value=Submit>";

    echo "<input type=hidden name=ip value=";   
    echo "$ip>";

    echo "</form>";

 include("../db/closedb.php");

}

提前谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-04-29 05:44:05

你的代码应该是:

代码语言:javascript
复制
$query = mysql_query("SELECT ip FROM Poll WHERE ip='$ip'");
$info = mysql_fetch_object($query);
$result = $info->ip;

if($result == $ip)

mysql_query()返回一个引用,而不是字符串。

此外,在SELECT语句中使用ip可以加快代码速度。

票数 0
EN

Stack Overflow用户

发布于 2011-04-29 05:42:17

您只是忘记了首先获取行。此外,您还可以通过简单的计数获得必要的信息:

代码语言:javascript
复制
$result = mysql_query("SELECT COUNT(*) as 'count' FROM Poll WHERE ip='$ip'");
$row = mysql_fetch_assoc($result);

if ($row['count']) {
    // show string
} else {
    // show poll
}
票数 4
EN

Stack Overflow用户

发布于 2011-04-29 05:45:50

mysql_query不直接返回数据,而是对结果的引用。

您可以使用以下命令获取查询找到的行数:

$num = mysql_numrows($result);

因此您可以通过以下方式进行检查:

代码语言:javascript
复制
$result = mysql_query("SELECT ip FROM Poll WHERE ip='$ip'");
if (mysql_numrows($result)) {
    // dostuff
} else {
    // do other stuff
}

// you can retrieve the ip like so:
$data = mysql_fetch_assoc($result);
$ip = $data['ip'];
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5825369

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档