这是我创建页面链接的方法
<a href="http://www.site.com/wiki/city/<?php echo urlencode($city); ?>" ><?php echo urlencode($city); ?></a>
以下是该特定城市的网址:
http://www.site.com/wiki/city/Qazvin+%28city%29
在目标页面上,当我尝试从数据库获取该城市时,它返回 false。它没有找到任何行。
SELECT * from citys WHERE title = 'Qazvin (city)'
boolean false
(i print out the query in the page )
如果我从 PHPMyAdmin SQL 控制台复制并运行它,它将返回几行。我只对这个特定的城市有问题
我正在使用 MVC 框架
Controller :
public function city($title=' '){
$title = urldecode($title);
$city = $this->m_wiki->getCITY( $title );
echo $this->db->last_query();
var_dump($city);
}
型号:
public function getCITY($title){
$city = $this->db->query("SELECT * from citys WHERE title = '$title'");
if($city->num_rows() > 0 )
return $city;
return false;
}
最佳答案
不要urldecode()
- 这是错误的,因为 PHP 已经自动为您完成了此操作。
一定要转义你的查询!该部分缺失,但必须完成,因为它不仅对于安全性至关重要,而且还会使您的查询使用非标准字符。
关于php - 当我在 php 代码中运行具有特定值的查询时,它不返回任何行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18304729/