Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: В один запрос
 
 автор: designshadow   (08.05.2010 в 23:00)   письмо автору
 
 

$cat = "2,1,9,4,5,7,6,8,3"; - хочу добавить каждый номер отдельно одним запросом, $cat может иметь либое кол-во чисел в разумных пределах.
mysql_query("INSERT INTO goods (id, title, cat) VALUES('$id','$title','$cat')");

Как составить запрос?

  Ответить  
 
 автор: cheops   (10.05.2010 в 12:40)   письмо автору
 
   для: designshadow   (08.05.2010 в 23:00)
 

Следует разбить строку $cat в массив, например, при помощи функции explode и сформировать многострочный INSERT-запрос вида
INSERT INTO goods (id, title, cat) VALUES
('$id','$title','$cat[0]'),
('$id','$title','$cat[1]'),
...
('$id','$title','$cat[n]');

  Ответить  
 
 автор: designshadow   (10.05.2010 в 17:21)   письмо автору
 
   для: cheops   (10.05.2010 в 12:40)
 

А если в $cat будет 2 числа или 10 чисел, то для каждого случая надо создавать правило на кол-во $cat в запросе или можно как то проще реализовать?

  Ответить  
 
 автор: Рома   (10.05.2010 в 19:56)   письмо автору
 
   для: designshadow   (10.05.2010 в 17:21)
 

<?php $id 'id';
$title 'title';
$cat = array('sfg''fgfh''dghdh''про''оапро''sfgh''sdfs', );

$sql "INSERT INTO goods (id, title, cat) VALUES ";
$end count($cat);
for (
$i 0$i $end$i++)
{
  
$sql .= "('".$id."','".$title."','".$cat[$i]."')";
  if (
$end == $i$sql .= ';'; else {$sql .= ', ';}
}
 echo 
$sql;

  Ответить  
 
 автор: designshadow   (11.05.2010 в 02:58)   письмо автору
 
   для: Рома   (10.05.2010 в 19:56)
 

Спасибо друг, помог! :-)

  Ответить  
 
 автор: Trianon   (10.05.2010 в 20:15)   письмо автору
 
   для: designshadow   (10.05.2010 в 17:21)
 

структуру таблицы goods приведите, пожалуйста.
SHOW CREATE TABLE goods;

Без этого и исходный вопрос смысла не имеет.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования