警告:输入中出现意外字符:“(ascii = 29)state = 0 in
我一直在阅读其他人对此错误所做的更改,并对我的php.ini文件进行了更改,添加了代码以覆盖另一个php设置,并且最终还是出现了相同的错误。 这是我的代码:
<html>
<body>
<table>
<?php error_reporting (E_ALL ^ E_NOTICE); ?>
<?php
function getRecords($query) {
$con = mysql_connect("localhost", "movie", "moviepw");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("movies", $con);
$result = mysql_query($query);
// THE ERROR IS REPORTED ON THIS LINE
return $result;
}
function buildQuery() {
$keyword = $_GET['keyword'];
$sql = "SELECT * from movies WHERE
(
'movie_title' LIKE '%keyword%'
OR
'movie_description' LIKE '%keyword%'
)";
return $sql;
}
$query = buildQuery();
$records = getRecords($query);
while($row = mysql_fetch_array($records)){ ?>
<tbody>
<table border='1'>
<tr>
<td><?= $row['movie_title']; ?></td>
<td><?= $row['movie_rating']; ?></td>
<td> <img src="<?= $row['movie_image'];?>"> </td>
<td><?= $row['movie_description']; ?></td>
<td><a href="movie_index.php">Return to Search</a></td>
</tr>
<? } ?>
</tbody>
</table>
</body>
</html>
任何想法,为什么我得到这个错误?
编辑添加了不可删除的空格。 我不得不删除几行并重写它们。 所以,这个问题并不完全在代码中......只是一个文本编辑器软件问题。
我的另一个错误是我的查询布尔错误。 原来我试图查询数据库而不是表格。
感谢所有帮助!
删除查询中列名称中的单引号。 如果PHP解释器仍然在抱怨ASCII 29,这可能不是唯一的错误。
$sql = "SELECT * from movies WHERE
(
'movie_title' LIKE '%keyword%'
OR
'movie_description' LIKE '%keyword%'
)";
// Should be
$sql = "SELECT * from movies WHERE
(
movie_title LIKE '%keyword%'
OR
movie_description LIKE '%keyword%'
)";
链接地址: http://www.djcxy.com/p/69473.html
上一篇: Warning: unexpected character in input: " (ascii=29) state=0 in