PHP循环记录未插入的问题

时间:2015-09-29 21:23:24

标签: php

我正在尝试使用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[]的问题是它没有插入所有记录,它只插入第一条记录。 我想它不在循环内,如何解决这个问题?

2 个答案:

答案 0 :(得分:1)

只需将$i=0移出for循环,然后将x的递增修改为$i++

答案 1 :(得分:-1)

我修好了,这一行

$url[] = $conn->real_escape_string(trim($linkHref));

只需靠近sql查询向下移动。