Друзья, подскажите, пожалуйста, где ошибка в коде... он не работает в итоге ...
<?php
$result=db_query("SELECT * FROM `katalog_prices` WHERE `subcategory`='ventfas');
$rows = db_affected_rows($result);
echo "<form action=updatenow.php method=post>";
for($count = 0;$count < $rows;$count++)
{
$temp = $temp=db_fetch_array($result, MYSQL_ASSOC);
echo "<input type=text name='prod_id[$count]' value='$temp[prod_id]'>";
echo "<input type=text name='prod_name[$count]' value='$temp[prod_name]'>";
echo "<input type=text name='price[$count]' value='$temp[price]'>";
echo prod_id[$count];
}
echo "<input type=submit name='Обновить'>";
echo "</form>";
?>
SELECT 100% рабочий так как взят из другого рабочего места))
Комментарии
Где? как не работает? Блок, шаблон? что вообще выводит?
Если в блоке, то какой формат блока посмотри.
Хз, немного странный код
Вообще-то селект будет правильнее так
db_query("SELECT * FROM {katalog_prices} WHERE subcategory ='%s'", 'ventfas');
двойные кавычки не закрыты. в целом код чуть более чем ужасен
Селект вполне воркабельный, не АПИчно конечно, но что делать.
А вот ручная генерация формы намекает на быдлокод
ну кавычки не закрыты, как уже указали.
смущает двойное присваивание в строке:
$temp = $temp = db_fetch_array($result, MYSQL_ASSOC);
и строки типа:
echo "<input type=text name='prod_id[$count]' value='$temp[prod_id]'>";
как я помню с раскрытием переменных-индексов массивов в двойных кавычках в PHP есть проблемы. их нужно через {} прописывать, чтобы они однозначно прочитывались, но еще лучше через конкатенацию собирать строку.
echo "<input type=text name='prod_id[" . $count . "]' value='" . $temp[prod_id] . "'>";