Nabend nochmal,
Das Prepare kommt vor die Schleife, weil es nur einmal ausgeführt werden mus. In die Schleife kommen Bind und Execute.
Leider nicht viiiel besser (ca. 90s)
$dbc = new PDO("mysql:host=localhost;dbname=topko_db", $user, $password);
$dbc->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING );
$sql_eintrag = "INSERT INTO exp_analyse_messwerte
(id
Time,
".$xml->{"ChannelInfo1"}->Name.",
".$xml->{"ChannelInfo2"}->Name.",
".$xml->{"ChannelInfo3"}->Name.",
".$xml->{"ChannelInfo4"}->Name.",
".$xml->{"ChannelInfo5"}->Name.",
".$xml->{"ChannelInfo6"}->Name.",
".$xml->{"ChannelInfo7"}->Name.",
".$xml->{"ChannelInfo8"}->Name.",
".$xml->{"ChannelInfo9"}->Name.",
".$xml->{"ChannelInfo10"}->Name.",
".$xml->{"ChannelInfo11"}->Name.",
".$xml->{"ChannelInfo12"}->Name.",
".$xml->{"ChannelInfo13"}->Name."
) VALUES
(:id, :Time, :ChannelInfo1, :ChannelInfo2, :ChannelInfo3, :ChannelInfo4
, :ChannelInfo5, :ChannelInfo6, :ChannelInfo7, :ChannelInfo8, :ChannelInfo9, :ChannelInfo10, :ChannelInfo11
, :ChannelInfo12, :ChannelInfo13)";
$stmt = $dbc->prepare($sql_eintrag);
for ($i=1; $i <= $xml->Values; $i++) {
$stmt->bindParam(':id', $id);
$stmt->bindParam(':Time', $xml->{"M$i"}->Time);
$stmt->bindParam(':ChannelInfo1', $xml->{"M$i"}->{"Ch1"});
$stmt->bindParam(':ChannelInfo2', $xml->{"M$i"}->{"Ch2"});
$stmt->bindParam(':ChannelInfo3', $xml->{"M$i"}->{"Ch3"});
$stmt->bindParam(':ChannelInfo4', $xml->{"M$i"}->{"Ch4"});
$stmt->bindParam(':ChannelInfo5', $xml->{"M$i"}->{"Ch5"});
$stmt->bindParam(':ChannelInfo6', $xml->{"M$i"}->{"Ch6"});
$stmt->bindParam(':ChannelInfo7', $xml->{"M$i"}->{"Ch7"});
$stmt->bindParam(':ChannelInfo8', $xml->{"M$i"}->{"Ch8"});
$stmt->bindParam(':ChannelInfo9', $xml->{"M$i"}->{"Ch9"});
$stmt->bindParam(':ChannelInfo10', $xml->{"M$i"}->{"Ch10"});
$stmt->bindParam(':ChannelInfo11', $xml->{"M$i"}->{"Ch11"});
$stmt->bindParam(':ChannelInfo12', $xml->{"M$i"}->{"Ch12"});
$stmt->bindParam(':ChannelInfo13', $xml->{"M$i"}->{"Ch13"});
$stmt->execute();
}