-2

問題は、私が何か間違ったことをしたと思うことです。何が悪いのかわかりません。私はtry/catchを試しましたが、このコードの他のすべての部分は適切に機能します(すべてをエコーし​​ました)が、「テキスト」には何も挿入されません。また、一般的な質問として、サーバー内のデータや他の URL からのデータを撮影しているときは exec を使用してもよいですか? いくつかの返信があることを願っています。

<?php
include('simplehtmldom_1_5/simple_html_dom.php');  
$html = new simple_html_dom();  
$html->load_file('http://www.youtube.com/live/all/videos?sort=dd&tag_id=&view=41');
$count = 0;
$pdo = new PDO('mysql:host=localhost;dbname=scraper', 'user', 'aa');
$string = $pdo->query('SELECT text FROM urls');
while ($row = $string->fetch())
{
  $links[] = $row['text'];
}
foreach($html->find('[class=content-item-title yt-ui-ellipsis yt-ui-ellipsis-2]') as $element)
{
$array[$count]=$element->href;
foreach ($links as $link)
{
if (strpos($array[$count], $link) == false)
{
$pdo->exec('INSERT INTO urls SET
text=$array[$count]');
}
}
$count += 1;
}
?>
4

1 に答える 1

0

これの代わりに

$pdo->exec('INSERT INTO urls SET text=$array[$count]');

これを使って

$pdo->prepare('INSERT INTO urls SET text=?')->execute(array($array[$count]));

時間をかけて PDO の準備について読んでください。変数の解析についても。

于 2013-04-06T04:05:47.517 に答える