0

这是我的代码:

echo "total row anzahl: " . mysql_num_rows($new_entries) . "<br />";   //=>100
//for each row..
while ($row = mysql_fetch_array($new_entries)){
$anzeigen_id = $row[0];    //text
$firma_id = $row[1];       //firma_id
//XML reading
$xml_filename = "xml/".$anzeigen_id.".xml";
$dom = new DOMDocument();
$dom->load($xml_filename);
$value = $dom->getElementsByTagName('FormattedPositionDescription');
foreach($value as $v){
    $text = $v->getElementsByTagName('Value');
    foreach($text as $t){
    $anzeige_txt = $t->nodeValue;
    $anzeige_txt = utf8_decode($anzeige_txt);
    $sql = "INSERT INTO joinvision_anzeige (`firmen_id`,`anzeige_id`,`anzeige_txt`) VALUES ('$firma_id','$anzeigen_id','$anzeige_txt')";
       $sql_inserted = mysql_query($sql);
       echo "inserted<br />";
     }
   }
 }

$new_entries真的是 100,也就是说,我应该可以一次插入 100 个项目,但它只添加了 30 个。有人可以告诉我为什么吗?

inserted消息真的来了 100 次。但是数据不是插入了 100 次,而是只有 30 次,它在某个地方被破坏了。

4

1 回答 1

2

几个检查点:

  1. $anzeigen_id检查所有 id 是否存在带有 .xml 的 xml 文件。
  2. 看看你是否有UNIQUE钥匙anzeige_idfirmen_id任何这样的组合。

如果两者都不是问题,您可以回显所有 nodeValues 并查看它们是否获得正确的值。

希望这可以帮助。

于 2012-11-26T11:38:16.367 回答