[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Вывод select
fdgfg
Здравствуйте. Есть форма редактирования персональных данных:
Имя..
Фамилия..
И выпадающий select категорий.

Как сделать чтобы в этом выпадающем select по умолчанию была выбрана категория которая уже занесена до этого в базу?
innovate
Цитата
Как сделать чтобы в этом выпадающем select по умолчанию была выбрана категория которая уже занесена до этого в базу?


Выдергиваешь из бд категорию, пробегаешься по списку, находишь нужный option и добавляешь атрибут selected
fdgfg
ну вот что у меня:

echo '<form action="edit.php" method="post">
<div>Категория:</div>
<select name="cat">'
;
$sql = $mysqli->query("SELECT category.cat FROM category, tovar WHERE category.id = tovar.cat");
while($cat = mysqli_fetch_array($sql))
{
echo "<option value='".$cat['id']."'>".$cat['cat']."</option>";
}
echo '</select><br/>


можете поправить?
rooor
if($cat['id'] == 'то, с чем сравниваем')
echo "<option selected value='".$cat['id']."'>".$cat['cat']."</option>";
else
echo "<option value='".$cat['id']."'>".$cat['cat']."</option>";
fdgfg
видать вы не совсем поняли что я имею введу.. В базе данных уже выбраная категория есть, но нужно чтобы когда выпадает select категории показывались не в произвольном порядке, а была уже выбрана та что в базе прописана..
fdgfg
что никто не знает?
inpost
Не знает что? Как работает цикл или как работает условие IF ? smile.gif
Отметить выбранный - дать аттрибут selected="selected" , всё. Осталось внутри цикла сделать проверку на совпадение.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Guest
если чесно не совсем понял как твоим способом это сделать.. вот мой код:

echo '<form action="edit.php" method="post"> 
<div>Категория:</div>
<select name="cat">'
;
$sql = $mysqli->query("SELECT category.cat FROM category, tovar WHERE category.id = tovar.cat");
while($cat = mysqli_fetch_array($sql))
{
echo "<option value='".$cat['id']."'>".$cat['cat']."</option>";
}
echo '</select><br/>';



можешь поправить?
rooor
так какая должна быть выбрана?
Цитата
которая уже занесена до этого в базу

ты выбираешь все категории из базы, значит до этого они ВСЕ были туда внесены
denisdangerous
echo '<form action="edit.php" method="post">
<div>Категория:</div>
<select name="cat">'
;
$sql = $mysqli->query("SELECT category.cat FROM category, tovar WHERE category.id = tovar.cat");
while($cat = mysqli_fetch_array($sql))
{
$selected=null;
if ($cat['id']==<То с чем сравниваем>) $selected='selected';
else $selected=null;
echo "<option value='".$cat['id']."' ".$selected.">".$cat['cat']."</option>";
}
echo '</select><br/>
rooor
Цитата
$selected=null;
if ($cat['id']==<То с чем сравниваем>) $selected='selected';
else $selected=null;

блин... ну так с чем сравниваем то?

$selected уже есть как null, в else его не надо второй раз писать
denisdangerous
Цитата (rooor @ 1.04.2013 - 14:00)
Цитата
$selected=null;
if ($cat['id']==<То с чем сравниваем>) $selected='selected';
else $selected=null;

блин... ну так с чем сравниваем то?

$selected уже есть как null, в else его не надо второй раз писать

А ну да, тупанул)) Весь день рефакторингом своего фреймворка занимаюсь, уже загоняюсь)
sign63

<?
echo "<form action='edit.php' method='post'>
<div>Категория:</div>
<select name='cat'>"
;
$sql = $mysqli->query("SELECT category.cat FROM category, tovar WHERE category.id = tovar.cat");
while($cat = mysqli_fetch_array($sql)) {
if ($cat['id']== ___Ваше условие___ ){
echo "<option selected='selected' value='". $cat['id'] . "'></option>";
}
else {
echo "<option value='". $cat['id'] ."'></option>";
}
}

echo "</select><br/>";
?>


_____________
user posted image
Guest
решено, всем спасибо.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.