2017-11-20 3 views
1

Nun, es ist etwas kompliziert zu beschreiben, was ich versuche zu tun, lassen Sie mich vollständig erklären. Zuallererst habe ich eine oder mehrere Optionen aus der Mehrfachselektion ausgewählt und in eine Spalte implodiert. Jetzt möchte ich den Namen jeder Auswahl-ID in einer Spalte anzeigen.ist es möglich, aus einer Kombination von IDs aus einer Spalte auszuwählen, n den ID-Namen anzuzeigen?

1. implodieren:

$gallery_category = implode(' ',$_POST['gallery_category']); 

dann versuchen, jeden eindeutigen IDs Namen anzuzeigen, wie diese

$gallery_category = $row['gallery_category']; 
$output = explode(" ", $gallery_category); 
$query = 'SELECT * FROM gallery_category WHERE gallery_category_name2 = "'.$output.'"'; 
$select_categories_name = mysqli_query($connection,$query); 

while($row = mysqli_fetch_assoc($select_categories_name)) { 
    $gallery_category_name = $row['gallery_category_name']; 
    echo "<td> $gallery_category_name</td>"; 
} 

immer Fehler wie: Hinweis: Array String-Konvertierung

+0

Die Variable $ output ist ein Array, daher müssen Sie $ output [0] verwenden. Dies wird nur eine Kategorie zurückgeben, die nicht das ist, was Sie wollen. Wenn Sie die Implode-Aktion ausführen, verwenden Sie das "," als Trennzeichen. In der Abfrage können Sie WHERE finden find_in_set ('{$ gallery_category}', gallery_category_name2) - oder etwas ähnliches – jeff

Antwort

3
$gallery_category = $row['gallery_category']; 
$output = explode(" ", $gallery_category);//this is an array so have to give it in a loop or specify by index 
foreach($output as $category) 
{ 
    $query = 'SELECT * FROM gallery_category WHERE gallery_category_name2 = "'.$category.'"'; 
    $select_categories_name = mysqli_query($connection,$query);   
     while($row = mysqli_fetch_assoc($select_categories_name)) { 
      $gallery_category_name = $row['gallery_category_name']; 
      echo "<td> $gallery_category_name</td>";  
     } 
} 

Dieses sollte funktionieren, wenn nicht pls kommentieren.

+0

funktioniert gut, vielen Dank, nur eine kleine Korrektur bearbeiten Sie bitte die aus foreach. :) –

+0

gut zu wissen, dass ich Ihre Zeit gespart habe .. :) – Darshan

Verwandte Themen