/ / Tworzenie tablicy nie działa tak jak myślałem - php, tablice, mysqli

Tworzenie Array nie działa tak jak myślałem - php, tablice, mysqli

Byłem bardzo zdezorientowany przez tablice i mam nadzieję, że ktoś może mi w czymś pomóc.

Próbuję przechowywać wybory użytkowników różnychzdjęcia w bazie danych mysql (do 3 zdjęć do wyboru na raz). Wybory są w rzeczywistości zaznaczone poniżej każdego obrazu i chcę zapisać te selekcje jako $ pic_id w tablicy.

Wybory są zapisywane w mojej bazie danych, ale wydaje się, że nie są one przypisywane do kluczy zgodnie z oczekiwaniami i nie mogę ich użyć.

Chcę móc użyć identyfikatora obrazu, aby pokazać dokonane selekcje.

Oto mój wynik: [7] => 11,6 [8] => 9,8

ale muszę uzyskać te zmienne indywidualnie. Spodziewałbym się tego: [7] => 11, [8] => 6, [8] => 9, [9] => 8

Formularz:

 <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 . "")";

Drukuj tablicę

<?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);
?>

Zobacz wynik powyżej.

Odpowiedzi:

0 dla odpowiedzi № 1

Po wstawieniu do bazy danych oddzielaj wartości takie jak połączone. Następnie przejrzyj wyniki i dodaj je do swojej tablicy.

<?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);
?>