【问题标题】:PHP MYSQL QUERY VALIDATION [closed]PHP MYSQL查询验证[关闭]
【发布时间】:2013-02-13 06:47:05
【问题描述】:

我的程序有什么问题吗?我似乎无法使用“找不到单词”? :/

echo "<form action='#' method='post'>";
echo "Search word here: <input type='text' name='search'>";
echo "<input type='submit' name='searchword' value='Search'>";
echo "</form>";
if(isset($_POST['searchword'])){
    $word = $_POST['search'];
    $result = mysql_query("SELECT * FROM positivethesaurus where word like '%$word%'");
    while($row = mysql_fetch_array($result)){   
    echo $row['word']."<br>";
    }
    if($row = mysql_fetch_array(!$result)){
        echo "word not found";
    }
}

【问题讨论】:

标签: php validation


【解决方案1】:

word 可能是保留词,试试这个

"SELECT * FROM positivethesaurus where `word` like '%$word%'"

【讨论】:

【解决方案2】:

您的发布值错误。改成,

$word = $_POST['searchword'];

来自,

$word = $_POST['search'];

【讨论】:

  • 它仍然无法正常工作,这是错误警告:mysql_fetch_array() 期望参数 1 是资源,布尔值在第 25 行的 C:\wamp\www\EIMS\searchbypositive.php 中给出
  • @troubledone 仅当您的查询返回 false 时才会出现此错误。检查您的查询是否返回任何结果。
  • 明白了:)!我应该将我的感叹号或空值放在 $row 从那个到这个 !$row :D
【解决方案3】:

我认为您将值分配给 $word 的字段名错误

$word = $_POST['search'];

应该是

$word = $_POST['searchword'];

我只是猜测,因为您正在检查它是否设置了此字段名称。

希望对你有帮助。

【讨论】:

  • 搜索词名称是我的提交名称
猜你喜欢
  • 1970-01-01
  • 2013-11-09
  • 1970-01-01
  • 1970-01-01
  • 2014-09-17
  • 2013-06-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多