Hey Leute,
hab nen Problem bei einer SQL-Anweisung. Dazu erstmal folgender Code
Und zwar geht es mir darum wie ich die $id102 in die Datenbank per Schleife schreiben soll. Da das id102 Array an verschiedenen Positionen in dem XML-Dokument ist, soll der Befehl lauten: Wenn irgend ein Array 102 als id hat dann, schreibe in Datenbank und wenn das Array[1] id 102 ist, dann nicht, bzw. 0, mein Lösungsvorschlag welcher aber nicht funktionier wäre
Und wenn ich es so ausführe wie gerade beschrieben, dann meckert SQL das: Column count doesn't match value count at row 2
hab nen Problem bei einer SQL-Anweisung. Dazu erstmal folgender Code
PHP-Code:
for ($i=1; $i<=$countrecord-1; $i++)
{
//Hier sind noch etwa 20Zeilen, in denen die $id-werte an die Arrays zugewiesen werden
$sql .= ",('$record_id','$date_convert','$time', '$id101'";
for ($j=0; $j<$countsensor; $j++){
if ($xml->record->sensor[$j]['ID'] == '102'){
$id102 = $xml->record->sensor[$j]['v'];
}
if ($xml->record->sensor[1]['ID'] != '102'){
$id102 = "";
}
}
$sql .= ", '$id102', '$id203', '$id204', '$id205', '$id301', '$id401', '$id402', '$id503', '$id504', '$id505', '$id506', '$id507', '$id508', '$id509', '$id510', '$id511')";
}
PHP-Code:
for ($i=1; $i<=$countrecord-1; $i++)
{
//Hier sind noch etwa 20Zeilen, welche aber nicht zur Problembehandlung beitragen
$sql .= ",('$record_id','$date_convert','$time', '$id101'";
for ($j=0; $j<$countsensor; $j++){
if ($xml->record->sensor[$j]['ID'] == '102'){
$id102 = $xml->record->sensor[$j]['v'];
$sql .= ", '$id102'"; //<--------
}
if ($xml->record->sensor[1]['ID'] != '102'){
$id102 = "";
$sql .= ", '$id102'"; //<-------
}
}
$sql .= ", '$id203', '$id204', '$id205', '$id301', '$id401', '$id402', '$id503', '$id504', '$id505', '$id506', '$id507', '$id508', '$id509', '$id510', '$id511')";
}
Kommentar