Есть 2 таблицы [sql]CREATE TABLE `products` ( `id` int(10) unsigned not null auto_increment, `name` varchar(128) not null, PRIMARY KEY (`id`), UNIQUE KEY (`name`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1; CREATE TABLE `pages` ( `id` int(10) unsigned not null auto_increment, `text` text, `number` int(10) unsigned not null, `product_id` int(10) unsigned not null, PRIMARY KEY (`id`), UNIQUE KEY (`number`,`product_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;[/sql] products и pages Связаны между собой так id в products == product_id в pages. Как правильно вставить . Пишет , что синтаксическая ошибка мускула. Код (Text): $nazv=$_POST['NAZV']; $p1// текст первая страница $p// текст вторая страница $query = "INSERT INTO `products` (`id`, `name`) VALUES (id, '$nazv')"; mysql_query($query) or die(mysql_error()); $id='id'; // вот здесь наверно туплю $query = "INSERT INTO `pages` (`id`, `text`, `number`, `product_id`) VALUES ('id', '$p', '1', '$id')"; mysql_query($query) or die(mysql_error()); $query = "INSERT INTO `pages` (`id`, `text`, `number`, `product_id`) VALUES ('id', '$p2', '2', '$id')"; mysql_query($query) or die(mysql_error());
$query = "INSERT INTO `products` (`id`, `name`) VALUES (id, '$nazv')"; $query = "INSERT INTO `products` (`name`) VALUES ('$nazv')"; a дальше http://ru.php.net/manual/en/function.my ... ert-id.php
При вставке контента пишет однотипные вещи вот : Или так Код (Text): $query = "INSERT INTO `products` (`id`, `name`) VALUES (id, '$nazv')"; mysql_query($query) or die(mysql_error()); $id=mysql_insert_id(); $query = "INSERT INTO `pages` (`id`, `text`, `number`, `product_id`) VALUES ('id', '$p', '1', '$id')"; mysql_query($query) or die(mysql_error()); $query = "INSERT INTO `pages` (`id`, `text`, `number`, `product_id`) VALUES ('id', '$p2', '2', '$id')"; mysql_query($query) or die(mysql_error()); ШШооо это значит господа ??))
Вот почему все опытне люди любят помучать таких недоразвитых как я. !!)) Ну не уловил я больше инфы...из твоего поста. Понял, что id можно сохранить в переменную с помощью функции mysql_insert_id(); Что и сделал...
Вот упрощеная штука работает как часы PHP: <?php ini_set('display_errors', 1); error_reporting(E_ALL); include('yzel.php'); $nazv='Bad'; $p='hello'; $p2='buy'; $query = "INSERT INTO `products` (`id`, `name`) VALUES (id, '$nazv')"; mysql_query($query) or die(mysql_error()); $id=mysql_insert_id(); $query = "INSERT INTO `pages` (`id`, `text`, `number`, `product_id`) VALUES ('id', '$p', '1', '$id')"; mysql_query($query) or die(mysql_error()); $query = "INSERT INTO `pages` (`id`, `text`, `number`, `product_id`) VALUES ('id', '$p2', '2', '$id')"; mysql_query($query) or die(mysql_error()); ?>
слепой мышь $query = "INSERT INTO `products` (`id`, `name`) VALUES (id, '$nazv')"; $query = "INSERT INTO `products` (`name`) VALUES ('$nazv')";
igordata ты прикалываешься ??? зачем мне дублировать вставку ?? Вообщем ошибку иправил так: PHP: $p=mysql_escape_string($p); $p2=mysql_escape_string($p2); $query = "INSERT INTO `products` (`id`, `name`) VALUES (id, '$nazv')"; mysql_query($query) or die(mysql_error()); $id=mysql_insert_id(); $query = "INSERT INTO `pages` (`id`, `text`, `number`, `product_id`) VALUES ('id', '$p', '1', '$id')"; mysql_query($query) or die(mysql_error()); $query = "INSERT INTO `pages` (`id`, `text`, `number`, `product_id`) VALUES ('id', '$p2', '2', '$id')"; mysql_query($query) or die(mysql_error()); теперь все всавляется в базу Ура !!!!!! )
Поля id в таблицах products и pages auto_increment. Поэтому их в запросе на вставку можно не указывать: PHP: $query = "INSERT INTO `products` (`name`) VALUES ('$nazv')"; $query = "INSERT INTO `pages` (`text`, `number`, `product_id`) VALUES ('$p', '1', '$id')"; $query = "INSERT INTO `pages` ( `text`, `number`, `product_id`) VALUES ('$p2', '2', '$id')";
Dima4321 Читать потому что надо, а не глазами пробегать. runner завтра у него будет все то же самое, потому что он так и не попробовал научиться читать =) Ты дал ему рыбу.