PHP/MYSQL问题-查询搜索随机失败

PHP/MYSQL问题-查询搜索随机失败,php,mysql,Php,Mysql,我有一个PHP脚本,用于从网站上抓取数据。每当脚本发现一个新项目时,它都会检查本地托管的mysql数据库,以查看该项目是否已经下载并且已经存在于mysql数据库中。如果它看到该项已经存在于数据库中,它应该忽略它并继续。这是我用来做这件事的代码: $result = mysql_query("SELECT * FROM web_media WHERE sourceForum LIKE '%$ForumtoGrab%' AND titleThreadNum=$threadTitleExists");

我有一个PHP脚本,用于从网站上抓取数据。每当脚本发现一个新项目时,它都会检查本地托管的mysql数据库,以查看该项目是否已经下载并且已经存在于mysql数据库中。如果它看到该项已经存在于数据库中,它应该忽略它并继续。这是我用来做这件事的代码:

$result = mysql_query("SELECT * FROM web_media WHERE sourceForum LIKE '%$ForumtoGrab%' AND titleThreadNum=$threadTitleExists");

if((!mysql_num_rows($result)) && (mysql_num_rows($result) !== FALSE))
{}
换句话说,如果结果为零,则该项被视为新项。这个脚本在我以前的托管公司上运行了好几个月。我最近搬到了一家新的主机提供商,突然遇到了一个非常奇怪的问题。每隔12小时左右,表达式就会随机失败,脚本会发现mysql数据库中已经存在的一组“新”数据。我已经尝试手动运行查询,代码似乎在查找预先存在的条目时没有问题—没有问题

有人知道这里发生了什么吗?我已经和主机提供商联系过了,他们说我们中断的Mysql连接数量非常少,不需要担心……所以看起来Mysql本身没有问题。我怀疑这可能是mysql查询的问题


谢谢

请尝试查看MySQL错误日志,查看查询中的错误。
PS:我希望您正在准备$threadTitleExists以便在MySQL查询中使用(smth,如(int)$threadTitleExists或mysqli\u real\u escape\u string($threadTitleExists))

$threadTitleExists正在更改,因此可能包含使您的查询无效的数据。尝试:
if(($result)和(&(mysql\u num\u rows($result)>0))
As$result可能不是有效的资源-因此您将执行
mysql\u num\u rows(false)
这实际上是我最初的想法。。。由于存在问题字符,项目未成功输入数据库。。。但这绝对不是问题所在。项目在那里,查询只是随机失败。