我正在尝试使用Simple HTML DOM将记录插入到mysql数据库表中。
查看代码..
<?php
$startpage=1;
$endpage=2;
for($p=$startpage;$p<=$endpage;$p++)
{
$html = file_get_html("http://examplesite.com/index.php?page=$p");
// connect to main page links
foreach($html->find('div.tt-name a[1]') as $link)
{
$linkHref = $link->href;
$url[] = $conn->real_escape_string(trim($linkHref));
//loop through each link
$linkHtml = file_get_html('http://examplesite.com'.$linkHref);
$title=array();
$size=array();
foreach($linkHtml->find('div#content h1') as $title2)
{
$title[] = $conn->real_escape_string(trim($tit2));
}
foreach($linkHtml->find('div.torrentinfo table tr[3]') as $size2)
{
$size[] = $conn->real_escape_string(trim($size2));
}
$qv = $conn->query("INSERT INTO data (title, size, url) VALUES('$title[$i]', '$size[$i]', '$url[$i]')");
if($qv){print "<br>Record Inserted..!!";}
else {print "<br>".$conn->error;}
$i++;
}
}
?>
一切正常,只有第11行$url[]
的问题是它没有插入所有记录,它只插入第一条记录。
我想它不在循环内,如何解决这个问题?
答案 0 :(得分:1)
只需将$i=0
移出for循环,然后将x的递增修改为$i++
答案 1 :(得分:-1)
我修好了,这一行
$url[] = $conn->real_escape_string(trim($linkHref));
只需靠近sql查询向下移动。