好的,我从网页中提取了解析后的文本,并将其放在称为adtext的列中。脚本运行没有错误,并说将数据放入其中,但是当我手动检查行为空时!我在var_dump
之后运行了return_between()
,并且文本在那里,但是没有将其放入数据库。这是到目前为止的代码...
mysqli_query($conn, $query1);
$link_result = mysqli_query($conn, $query1);
$result = mysqli_fetch_assoc($link_result);
file_get_contents($result['adlink']);
$text_holder = file_get_contents($result['adlink']);
return_between($text_holder, "postingBody", "<!-- .posting -->", EXCL);
$final_text = return_between($text_holder, "postingBody", "<!-- .posting -->", EXCL);
$query2 = "UPDATE usedcars SET adtext = $final_text WHERE `key` = $x";
mysqli_query($conn, $query2);
echo "<font color='#FFFF00'>Placing text from <font color='#00FF00'>$result[adlink]</font> into database</font><br>";
$x++;
}
我想念/忘记了什么?
最佳答案
您缺少$final_text
周围的单个队列,
$query2 = "UPDATE usedcars SET adtext = '".mysqli_escape_string($conn, $final_text)."' WHERE `key`= $x";
并始终以生产中的错误通知您自己。通过像这样使用
mysqli_error()
mysqli_query($conn, $query2) or die(mysqli_error());
mysqli
不会自动使用bindparam
保护您的查询