2016-12-06 6 views
0

私はカラムにサイズの値を持っています。 38 40 42 44を選択し、サイズフィールドを選択し、それを(explode()を使用して)選択して、選択タグhtmlの後に選択するオプションを与えたいとします。 私は黒のスペースの後に番号を分割するためにexplode()を使用しますが、コードは私に複数の行explode()を使用してselectタグのクエリ値を複数の複数の行に分割する方法

$sql = mysql_query("SELECT * FROM products WHERE id='$item_id' LIMIT 1"); 
     while ($row = mysql_fetch_array($sql)) { 
      $product_name = $row["product_name"]; 
      $price = $row["price"]; 
      $size = $row["size"];  
$myArray = explode(' ', $size); 
      foreach($myArray as $my_Array){ 
          } 

<select name="size"><option value="'.$my_Array.'">'.$my_Array.'</option> 
<select name="size"><option value="'.$my_Array.'">'.$my_Array.'</option> 

ですべての結果を与えていませんが、コードは私に38のような最初の値のみを示している...そして私がしたいです値に含まれる数値の数を示します。選択したタグごとに値を表示して、ユーザーが選択するオプションを指定します。私は何が逃したのか分からない。 ddp

EDIT おかげで私はそれがあまりにも早くループ機能を閉じていた問題を修正しました。

+0

なぜmysqlタグにコードがないのですか?編集:それは[編集](http://stackoverflow.com/revisions/41004176/2)で削除されました。 mysqlとの関連性がある場合は、そのコードと(mysql)タグを再度追加してください。 –

+0

コメントにコードを入れずに質問を編集するhttp://stackoverflow.com/posts/41004176/edit –

+0

大変申し訳ありませんが、私は編集した初心者ですが、mysqlコードを置いていますが、問題はmysqlではありません – Stefan

答えて

1
//assuming that `size` is stored as 38 40 42 in the same row 
//also assuming your LIMIT 1 is for testing, if not, you don't need the loop 
/** PLEASE CHANGE TO MYSQLI OR PDO! mysql_ is depreciated and a huge security risk **/ 
$sql = mysql_query("SELECT * FROM products WHERE id='$item_id' LIMIT 1"); 
    while ($row = mysql_fetch_array($sql)) { 
     $product_name = $row["product_name"]; 
     $price = $row["price"]; 
     $size = $row["size"];  
     myArray = explode(' ', $size); 
     //heres your issue, declare select to start with 
     echo '<select name="size">'; 
     foreach($myArray as $my_Array){ 
      //the out put from your explode loop array needs to go here 
      echo '<option value="'.$my_Array.'">'.$my_Array.'</option>'; 
     } 
     echo '</select>'; 
}//close the while loop 
+0

助けてくれてありがとう、はい、私は

1

問題はあなたのforeach($list as $value){ ... }にループと同じ名前が付けられていて、それは書き換えられる可能性があります。

0

foreach loop ending}が間違った場所にあります。 ループ内では何もしません。

関連する問題