[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Внести несколько ID из TEXTAREA
WisesT
Доброго дня.
Надоумьте пожалуйста.

Есть таблица works_completed

id int(8)
date_of_performance timestamp CURRENT_TIMESTAMP
courier varchar(50)

ID - ключ

Написал вот такую формочку works_completed_form.php

<form action="works_completed_form.php" method="post">
<p>
Введите до 30 номеров накладных через Enter:</p>

<p><textarea
cols="7" rows="30" name="id" id="id"></textarea>
Курьер<SELECT NAME="courier" id="courier">
<?php

require("../include/kuriers.txt")
;
?>
<OPTION
value="Не указан" SELECTED>Не указан
</SELECT>


<p><INPUT
TYPE="submit" name="insert" VALUE="Готово!"></p>
</form>



Пытаюсь сделать следующий алгоритм.

В <textarea name="id" id="id"> сканируются номера накладных, через enter.
Далее из списка выбирается курьер.
По нажатию "Готово", в базе создаются записи с ID внесенными в textarea, а в поле courier всем этим записям ставится выбраный курьер.

Опции.
Удалять из списка внесенных номеров возможные символы (должны быть цыфры) и перенос на новую строку.

Пока у меня вот такой код


include "../config.php";
if (isset($_POST['insert'])) {
$courier = mysql_real_escape_string($_POST['courier']);
$id = array_map(
create_function('$v', 'return intval($v);'),
explode(' ', $_POST['id']));
$numbers = array();
foreach($id as $n){
$numbers []= "($n, '$courier')";
}
$query = "INSERT INTO `works_completed`
(`id`, `courier`)
VALUES "
.implode(',', $numbers)." ON DUPLICATE KEY UPDATE
courier = '
$courier'";
echo $query;
mysql_query($query)or die(mysql_error());

}


Не знаю верное ли это решение. Да и не фильтрует оно от символов.
Плюс вносится только первый номер в списке.
Подскажите, пожалуйста.
Может есть варианты проще?
Спасибо.
Быстрый ответ:

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