2017-11-20 11 views
1

私が何をしようとしているのかを説明するのは複雑ですが、完全に説明しましょう。まず最初に、複数の選択肢の中から1つまたは複数のオプションを選択し、列に埋め込むことで、各選択肢ID名を1つの列に表示する必要があります。各ID名を1つの列nのIDの組合せから選択することは可能ですか?

第一破:注意:文字列への変換アレイ

+0

$出力変数は配列なので、$ output [0]を使用する必要があります。これは、あなたが望むものではない1つのカテゴリのみを返します。 implodeアクションを実行するときは、セパレータとして "、"を使用します。クエリでは、WHERE find_in_set( '{$ gallery_category}'、gallery_category_name2)などを使用することができます。 – jeff

答えて

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>";  
     } 
} 

この

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

は、この

$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>"; 
} 

のようなエラーが発生し得るような、それぞれ固有のID名を表示しようとしていますplsのコメントではない場合、動作するはずです。

+0

はうまく動作します。ありがとう、ちょっとした訂正はforeachから​​を編集してください。 :) –

+0

私はあなたの時間を節約知って.. .. :) – Darshan

関連する問題