1

PHP 配列の内容を MySQL テーブルの列の行に書き込むのに少し問題があります。ループを介して毎回更新する代わりに、同じものがデータベースに何度も挿入されます。

コードは次のとおりです($codeは文字の配列で、$code_lengthその長さです):

for ($counter = 0; $counter < $this->code_length; $counter++){
    $query = "INSERT INTO characters VALUES ('$this->code[$counter]')";
    mysql_query($query, $db_server);
}

このように実行すると$code、テーブルのすべての行に最初の要素が配置されます。ただし、代わりに SQL クエリの外部の配列要素への参照を使用するように変更すると、機能します。例えば:

for ($counter = 0; $counter < $this->code_length; $counter++){
    $code_element = $this->code[$counter];
    $query = "INSERT INTO characters VALUES ('$code_element')";
    mysql_query($query, $db_server);
}

正常に動作し、新しい要素をそれぞれ$code新しい行に配置します。

最初の例で私が間違っていることを誰でも見ることができますか、それとも MySQL クエリでそのように配列要素を参照できないでしょうか?

4

1 に答える 1