見ずらくてすみません。
1は、私がネットから引っ張ってきて試行錯誤で作ったものになります。
2が友人が作ってくれたものになります。現在どちらも同じように表示されていますが、最初はどちらも動かなくて、最後にmysqli_data_seek($result, 0);を入れたら、DBのデータがセレクトボックスに入ってくれました。
聞きたいのが、2の友人が作ったコードですが、DBにあるデータを引っ張ってきてただ用意されたセレクトボックスに入れたかっただけなので、まだPOSTはないはずなのですが(これからセレクトボックスで選択されたそれぞれの項目によって、それぞれのページに飛ばす予定です)なぜPOSTがあるのでしょうか?
1と2は同じように表示されているのですが、中身は同じ内容でしょうか?2がなんだかちゃんと解読できません。説明していただけませんか?
php
1---1--- 2<select name="category"> 3 <option value="NULL">Choose One</option> 4 <?php 5 //select box 6 $categorybox = array(); 7 $i = 1; 8 mysqli_data_seek($result, 0); 9 while ($row = $result->fetch_assoc()) { 10 // 一応データをパースする 11 $categorybox[$i] = htmlspecialchars(trim(urldecode(mb_convert_encoding($value, 'UTF-8', 'auto')))); 12 $i++; 13 echo "<OPTION value='". $row['category_id']."' >" . $row['category'] . "</OPTION>\n"; 14 } ?> 15 </select>
php
1---2--- 2 <select name="category"> 3 <option value="NULL">Choose One</option> 4 <?php 5 mysqli_data_seek($result, 0); 6 $categorybox = isset($_POST['category_id'])? $_POST['category']: ''; 7 while ($row = $result->fetch_assoc()) { 8 echo "<option value='" .$row['category_id']."'".($row['category'] == $categorybox?'selected':'') .">".$row['category']."</option>"; 9 ?> 10 </select>
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/05/31 04:14
2017/05/31 04:24
2017/05/31 04:36