オンラインで読んで見つけた後でも、問題を解決する方法がわかりません。そして、私がこのようにできる方法はありません:
$select=mysql_query("select * from products_list categories where id='3'");
while($row=mysql_fetch_array($select)){
echo "whatever fields that I want to display onto the form before category field";
$select=mysql_query("select * from categories ORDER BY id ASC");
while($row=mysql_fetch_array($select)){
echo "compare with the result in categories table and select the option if it's true";
}
}
私は正しいですか?
現在、データベースproducts_listとcategoryに2つのテーブルがあります。
テーブルproducts_listは、ID、コード、価格、カテゴリ、ステータスなどの多くのフィールドで構成されています...
テーブル カテゴリのみ: ID、カテゴリ (このテーブルには、使用可能なカテゴリ オプションのすべてのセットのみが含まれます)
selectステートメントを使用して、ユーザーが以前にすべてのデータを保存したテーブルproducts_listからすべての結果を取得する更新/編集フォームがあります。
フォーム自体のカテゴリ部分の下には、複数選択リストボックスがあります。
私の問題は今です:
- テーブルproducts_listからのすべての結果を更新/編集フォームに表示します
- テーブル カテゴリのすべてのカテゴリ オプションを更新/編集フォーム (リストボックス) に表示します。
- ユーザーがテーブルproducts_listに保存したカテゴリを比較し、リストボックスに表示されるオプションを選択します(これは2番目の質問です)
これまでにこれを行ったことがなく、これらの記事やスレッドをオンラインで読んで何が起こっているのかわからないため、これについて多くの助けが必要です. 皆さんが私の質問を理解してくれることを願っています。前もって感謝します。
現在コーディングを更新していますが、まだスタックしています:
$result2= mysql_query("SELECT category FROM categories ORDER BY id ");
$all_cat = array();
while($row2 = mysql_fetch_assoc($result2)) {
$all_cat[] = $row2['category'];
}
//dropdownlist query
$query="SELECT * from products_list where id='100'";
$result = mysql_query ($query);
//populate the dropdownlist
while($row = mysql_fetch_assoc($result)) {
$sel_cats = explode(",", $row['category']);
//determine if the category is selected
foreach ($sel_cats as $sel_cat){
$selected = '';
if ($sel_cat == $all_cat ){
$selected =' selected="selected" ';
break;
}
}
foreach($all_cat as $i => $value)
{
echo '<option value="' . $value. '"' . $selected . '>'.$value.'</option>\n';
}
}