簡體   English   中英

在for循環中從PHP數組寫入MySQL

[英]Writing to MySQL from a PHP array in a for loop

我在將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查詢中引用數組元素?

您必須使用{}在查詢中使用數組

$query = "INSERT INTO characters VALUES ('{$this->code[$counter]}')";

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM