|
|
|
|
|
для: Dizels
(30.07.2008 в 13:08)
| |
$chek = in_array($print['id_category'], $category )? 'selected="selected"' : '';
|
Хотя вместо этих двух запросов лучше бы подошел один LEFT JOIN
Ну да дело ваше... | |
|
|
|
|
|
|
|
для: Dizels
(30.07.2008 в 13:08)
| | Вам нужен массив $category - массив выбранных категорий
<select name ='category[]' size="7" multiple="MULTIPLE">
<?php
$query = "SELECT * FROM agro_category";
$result = mysql_query($query);
while ( $print = mysql_fetch_array($result))
{
$chek = in_array($print['id_category'],$category) ? "selected" : "";
echo "<option value='".$print['id_category']."' $chek>".$otstup.$print['name']."</option>";
}
?>
</select>
|
| |
|
|
|
|
|
|
|
для: Roma
(30.07.2008 в 12:44)
| | спс и последнее)))
вот форма:
<select name ='category[]' size="7" multiple="MULTIPLE">
<?php
$query = "SELECT * FROM agro_category";
$result = mysql_query($query);
while ( $print = mysql_fetch_array($result))
{
$chek = $category == $print['id_category'] ? 'selected="selected"' : '';
echo "<option value='{$print['id_category']}' $chek>{$otstup}".$print['name']."</option>";
}
?>
</select>
|
попытался сюда вставить значения из категории - но не правильно, подскажите, как надо.
Если я правильно понял, то тут нужно массив $category прогонять по циклу, но как это сделать - не знаю. | |
|
|
|
|
|
|
|
для: Dizels
(30.07.2008 в 12:39)
| |
$sql = "select * from ent_cat where id_enterprise=". intval($_GET['id_enterprise']);
$res=mysql_query($sql);
|
intval - http://softtime.ru/dic/id_dic=245&id_group=9 | |
|
|
|
|
|
|
|
для: Trianon
(30.07.2008 в 12:18)
| | Если я правильно понял, то тут было парочка ошибок, я написал вот так:
$sql = "select * from ent_cat where id_enterprise=". intval($_GET['id_enterprise']);
$res=mysql_query(sql);
if(!$res) {
print "Ашыпка";
}
for($category = array(); $row = mysql_fetch_assoc($res); )
$category[] = $row['id_category'];
print_r($category);
|
В результате выдает вот такое:
Ашыпка
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL
result resource in Z:\home\domen.ru\www\admin\agro_enterprise\editenterpriseform.php
on line 35
Array ( )
|
И еще - поясните плз, что такое intval | |
|
|
|
|
|
|
|
для: Dizels
(30.07.2008 в 11:57)
| | // выясняем категории
$sql = "select * from ent_cat where id_enterprise=". intval($_GET['id_enterprise']);
$res=mysql_query();
if(!$res)
Ашыпка!
for($category = array(); $row = mysql_fetch_assoc($res); )
$category[] = $row['id_category'];
| print_r($category); | |
|
|
|
|
|
|
|
для: Dizels
(30.07.2008 в 11:27)
| | И последний вопрос - как теперь из БД выводить эти значения обратно в форму.
Для начала делаю запрос на выборку категорий редактируемого предприятия.
// выясняем категории
$sql=mysql_query("select * from ent_cat where id_enterprise=". $_GET['id_enterprise']);
$s = mysql_fetch_array($sql);
if(is_array($s) && count($s)>0)
{
$category = $s['id_category'];
}
|
Дальше проверяю, что получил в $category:
Выводит только 1 значение. Что не так? | |
|
|
|
|
|
|
|
для: Trianon
(30.07.2008 в 10:48)
| | Огромное спасибо за помощь, вроде все получилось. | |
|
|
|
|
|
|
|
для: Dizels
(30.07.2008 в 10:22)
| | >По поводу записи в 13:16 - это моя запись, если смотреть следущую, то там вот что:
Это моя запись. И там вот что:
$category = $_POST['category'];
|
>Извините, понимаю, что уже порядком надоел, но все же с проблемой нужно разобраться.
>
>Почему $category - не массив?
Потому что Вы это присваивание где-то потеряли. | |
|
|
|
|
|
|
|
для: Dizels
(30.07.2008 в 10:22)
| | Вам BinLaden, сказав, что $category - не массив, - указал причину возникшей ошибки.
Возможно, вы не выбрали ни одного элемента в селекте. | |
|
|
|
|