Php 在表中搜索以查找集合id的IP地址是否存在
我的项目遇到了障碍,需要一些指导。我想,我需要实现一个返回mysql\u num\u行的模型查询。我想做的是在我的页面上有一个记录投票人IP地址的评级小部件。我不希望这个人投票不止一次。当我返回mysql\u num\u行时,我得到一个错误 警告:mysql_num_rows()只需要1个参数,给定0 这是我的模型Php 在表中搜索以查找集合id的IP地址是否存在,php,mysql,zend-framework,Php,Mysql,Zend Framework,我的项目遇到了障碍,需要一些指导。我想,我需要实现一个返回mysql\u num\u行的模型查询。我想做的是在我的页面上有一个记录投票人IP地址的评级小部件。我不希望这个人投票不止一次。当我返回mysql\u num\u行时,我得到一个错误 警告:mysql_num_rows()只需要1个参数,给定0 这是我的模型 public function getRatingByIp($ipAddress) { $sql = sprintf ("SELECT ip_address FROM
public function getRatingByIp($ipAddress)
{
$sql = sprintf ("SELECT ip_address FROM " . $this->_prefix . "media_set_rating
WHERE set_id = set_id");
mysql_query($sql);
return mysql_num_rows();
}
以下是我为控制器准备的:
$setId = $this->_request->getParam('set_id');
$ipAddress = $this->_request->getClientIp();
$ipAddress = $setDao->getRatingByIp($setId);
$this->_view->assign('ip_address', $ipAddress);
$this->_view->assign('set_id', $setId);
然后在视图中,我想执行if-else语句来显示或隐藏评级表单。
我现在有这个:
<?php if ($this->ipAddress > 0) : ?>
"message"
<?php else: ?>
"rating form"
<?php endif; ?>
“消息”
“评级表”
也许代码中缺少了一些东西,或者有更简单的方法?
谢谢你的帮助
美国东部时间5月28日12:28修订
if-Else的修订代码如下
<?php if ($this->ip_address > 0) : ?>
"message"
<?php else: ?>
"rating form"
<?php endif; ?>
“消息”
“评级表”
查询代码与Eduardo发布的代码完全相同
再次感谢 您应该在查询中使用资源:
public function getRatingByIp($ipAddress)
{
$sql = "SELECT ip_address FROM " . $this->_prefix . " media_set_rating WHERE set_id = " . $ipAddress);
$result = mysql_query($sql);
return mysql_num_rows($result);
}
您不应该使用mysql\u num\u rows
,因为它已被弃用
参考资料:您应该在查询中使用资源:
public function getRatingByIp($ipAddress)
{
$sql = "SELECT ip_address FROM " . $this->_prefix . " media_set_rating WHERE set_id = " . $ipAddress);
$result = mysql_query($sql);
return mysql_num_rows($result);
}
您不应该使用mysql\u num\u rows
,因为它已被弃用
参考:Ok,排除了错误,但if-else语句仍然不成功。我在表中有我的ip地址,它仍然显示表单。回显
$sql
变量以查看有什么,然后在mysql上执行以查看是否找到结果。在Zend中如何执行此操作?如果我在模型中回显,它将不会显示在视图中。如果我在视图上回显,它将出错,因为它不知道它是什么;退出代码>我将它添加到视图中,得到了:注意:未定义变量:sql。将它添加到模型中不会给我带来任何结果。好的,这样就消除了错误,但是我仍然无法成功地使用if-else语句。我在表中有我的ip地址,它仍然显示表单。回显$sql
变量以查看有什么,然后在mysql上执行以查看是否找到结果。在Zend中如何执行此操作?如果我在模型中回显,它将不会显示在视图中。如果我在视图上回显,它将出错,因为它不知道它是什么;退出代码>我将它添加到视图中,得到了:注意:未定义变量:sql。将其添加到模型中不会给我带来任何好处。