Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Аватара для blackmane

Пользователь


Сообщения: 69
Благодарности: 0

Профиль | Отправить PM | Цитировать


Вроде как что начинает получатся (правда пока не на динамическом селекте ( ), но выдает ошибку:
Цитата:
Warning: Invalid argument supplied for foreach() in Z:\home\itr.itr\www\print\add_print.php on line 35
You have an error in your SQL syntax;
check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1 INSERT INTO print (mat_face) values ('Столбенко Г.Н.') )
читать дальше »

PHP код: Выделить весь код

$mat_face $_POST['mat_face'];

 if(!empty(
$mat_face))
 {
 
// Начинаем формировать переменную, содержащую этот список
 // в формате "(3,5,6,7)"
 
$query "(" ;
 foreach(
$mat_face as $val$query.= "$val,";
 
// Удаляем последнюю запятую, заменяя ее закрывающей скобкой)
 
$query substr($query0strlen($query) - ). ")" ;
 
// Завершаем формирование SQL-запроса на удаление
 
$query "INSERT INTO print (mat_face)  values ('$mat_face') ".$query;
 
// Выполняем запрос
 
if(!mysql_query($query))
 {
 echo 
mysql_error()."<br>";
 echo 
$query."<br>";
 }
 }
        
header("Location: insert_print.php"); 

HTML код: Выделить весь код
<form name="myForm" action="add_print.php" method="post" onSubmit="return splash();"> <input type="hidden" name="action" value="add"> <table width="100%" border="0" cellspacing="3" cellpadding="0"> <tr> <td>Модель</td> <td>Серийный номер</td> <td>Инвентарный номер</td> <td>Картридж</td> <td>Этаж</td> <td>Кабинет</td> <td>Мат. лицо</td> </tr> <tr> <td><input name="model" maxlength=30 size=22> </td> <td><input name="sn" maxlength=30 size=22></td> <td><input name="inv_num" maxlength=60 size=22></td> <td><input name="cartrige" maxlength=60 size=22></td> <td><input name="et" maxlength=60 size=22></td> <td><input name="depar" maxlength=60 size=22></td> <td><!--<input name="mat_face" maxlength=60 size=22>--> <?php include "../data/dbconfig.php"; //if($conect == true) {echo 'Conect DB';} //if($select == true) {echo 'Select TABLE';} //selet all data from DB test $result = mysql_query("select * FROM mat_face"); $array = mysql_fetch_array($result); echo "<select size='1' name='mat_face' ><option value='all'>*Выбрать проблему...*</option>"; do { printf(" <option class='cat-title' name='mat_face[]' value='%s'>%s</option> " ,$array['name'],$array['name']); } while($array = mysql_fetch_array($result)); echo "</select>" ?> </td> </tr> </table> <table width="100%" border="0" align="center"><tr colspan=2><center><input type="submit" value="Отправить"></center></tr></table> </form>



Попытался сделать на основе удаления выбранных строк, но как то не сильно (

Цитата Sham:
do-while делает минимум 1 цикл, даже если выборки нет, в результате чего внутри цикла будут неопределенные переменные. »
Я убрал do и после обновления страницы в списке осталось только одно значение, вместо 5...

Отправлено: 11:12, 10-01-2012 | #7