[英]Creating Array not working as I thought
我對數組感到非常困惑,希望有人可以幫助我一些。
我試圖將用戶選擇的各種圖片存儲在mysql數據庫中(一次最多可以選擇3張圖片)。 這些選擇實際上是每張圖片下方的復選框,我想將這些選擇存儲為$ pic_id的數組。
這些選擇已存儲在我的數據庫中,但是似乎沒有按我期望的那樣為它們分配鍵,而且我似乎無法使用它們。
我希望能夠使用圖片ID來顯示所做的選擇。
這是我的結果:[7] => 11,6 [8] => 9,8
但是我需要單獨查看這些變量。 我希望這樣:[7] => 11,[8] => 6,[8] => 9,[9] => 8
表格:
<form action="insert.php" method="GET">
<?php
<input type=\"checkbox\" name=\"pic_id[]\" value=".$row['id'].">
<input type="submit" name="submit" value="Add" />
?>
insert.php
$checkBox = implode(',', $_GET['pic_id']);
if (isset($_GET['submit'])) {
$sql="INSERT INTO pics (pic_id) VALUES ('" . $checkBox . "')";
打印陣列
<?php
$sql="SELECT * FROM pics";
$query = mysqli_query($conn, $sql);
$myArray = Array();
while($row = mysqli_fetch_array($query, MYSQLI_ASSOC)){
$myArray[]=$row['pic_id'];
}
print_r($myArray);
?>
見上面的結果。
就像將它們插入數據庫時將它們串聯起來一樣,只需將它們分開即可。 然后遍歷結果並將它們添加到您的數組中。
<?php
$sql="SELECT * FROM pics";
$query = mysqli_query($conn, $sql);
$myArray = array();
while($row = mysqli_fetch_array($query, MYSQLI_ASSOC)){
foreach(explode(',', $row['pic_id']) as $id) {
$myArray[]= $id;
}
}
print_r($myArray);
?>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.