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

Форум MySQL

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

 

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

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

тема: insert into (название таблицы) values
 
 автор: Vadim777   (17.08.2005 в 12:17)   письмо автору
 
 

Из формы вводится информация в таблицу в том числе с помощь выпадающего окна, где каждая рубрика соответствует таблице в БД. Как привязать выбранную таблицу/рубрику к запросу к мускулу?
Я пробую
if ($searchtype= $com)
$query = "insert into com values
('".$name."', '".$para."', '".$firma."' )";
elseif ($searchtype= $pro)
$query = "insert into pro values
('".$name."', '".$para."', '".$firma."' )";
elseif ($searchtype= $mon)
$query = "insert into mon values
('".$name."', '".$para."', '".$firma."' )";
$result = mysql_query($query);

не работает, подскажите как правильно?

   
 
 автор: Axxil   (17.08.2005 в 12:25)   письмо автору
 
   для: Vadim777   (17.08.2005 в 12:17)
 

а нельзя просто

<?
$query 
"insert into ".$_POST['table_name']." values
('"
.$name."', '".$para."', '".$firma."' )";
// ну или $_GET смотря какой метод используете
?>


А выпадающее меню сделать:
<select method="post" name='table_name'>
<option value='com'>текст</option>
<option value='pro'>текст</option>
<option value='mon'>текст</option>
</select>

   
 
 автор: Vadim777   (17.08.2005 в 14:02)   письмо автору
 
   для: Axxil   (17.08.2005 в 12:25)
 

не работает! А "денвер" ничего не ругается- молчит. Может 'table_name' допольнительно расписать?

   
 
 автор: Vadim777   (17.08.2005 в 14:07)   письмо автору
 
   для: Axxil   (17.08.2005 в 12:25)
 

Плюс, я добавил в код, что если в поле не внесены данные то высказывает подсказка, что не все поля заполнены, в то время как не выбирается таблица/рубриа 'table_name' подсказка не появляеться, хотя она прописана в сценарии
if ( !$table_name || !$name || !$para || !$firma )
{
echo 'You have not entered all the required details.<br />'
.'Please go back and try again.';
exit;

   
 
 автор: Axxil   (17.08.2005 в 14:33)   письмо автору
 
   для: Vadim777   (17.08.2005 в 14:07)
 

Обычно при записи в базу php не ругается.
Чтобы найти ошибку нужно вывести запрос с помощью echo $sql;
Скопировать и выполнить в какой-нибудь mysql оболочке (mysql-front, phpmyadmin и т.д.)
А какова структура этих таблиц?

   
 
 автор: Vadim777   (17.08.2005 в 15:21)   письмо автору
 
   для: Axxil   (17.08.2005 в 14:33)
 

customerid int(10) UNSIGNED Нет auto_increment
name char(30) Нет
para char(40) Нет
firma char(20) Нет
такие поля имеют все таблицы

   
 
 автор: Axxil   (17.08.2005 в 16:17)   письмо автору
 
   для: Vadim777   (17.08.2005 в 15:21)
 

А если явно попробовать указать поля?

<?
$query 
"insert into ".$_POST['table_name']."(name,para,firma) values 
('"
.$name."', '".$para."', '".$firma."' )"
?>


А echo $query пробовали? Что выводит?

PS У вас налицо избыточность в таблицах. Зачем вам три одинаковые таблицы?
Не проще ли их свести в одну добавив поле с уникальным кодом таблицы?

   
 
 автор: Vadim777   (17.08.2005 в 18:40)   письмо автору
 
   для: Axxil   (17.08.2005 в 16:17)
 

УРА!!!!!!
Вы не представляете как Вы меня выручили! последний вариант - РАБОТАЕТ!!!.
Я немного балуюсь в кореле, фотошопе, HTML могу сделать красивые кнопки, с эффектами onmouseover onmouseon без жавы-скрипт, силами корела и HTML.
Я сейчас бегал по магазинам спрашивал учебники по php и мускулу - нишиша.
Я ваш должник.
Спасибо!
А как сделать одной таблицей?
:)

   
 
 автор: Vadim777   (17.08.2005 в 18:54)   письмо автору
 
   для: Vadim777   (17.08.2005 в 18:40)
 

На счет echo=$sql; я зашел в phpmyadmin, и ни в курсе куда вводить запрос, если в поле базы - выдает ошибку в запросе.
Другой вопрос, а тоже, но select * from таблиц, где еще "searchterm" соответствующие полям?

   
 
 автор: cheops   (17.08.2005 в 19:34)   письмо автору
 
   для: Vadim777   (17.08.2005 в 18:54)
 

В phpMyAdmin запрос следует вводить в textarea, который открывается при переходу по пункту меню SQL.
>Другой вопрос, а тоже, но select * from таблиц, где еще "searchterm"
>соответствующие полям?
Хм... не очень понятно, что следует сделать...

   
 
 автор: Vadim777   (18.08.2005 в 10:22)   письмо автору
 
   для: cheops   (17.08.2005 в 19:34)
 

Ну нетолько ввод, но той же инфы, тем же магаром, что было ведено - вывести из базы данных. форма, где посетитель выбирает рубрику вводит параметры.

   
 
 автор: Vadim777   (18.08.2005 в 10:26)   письмо автору
 
   для: cheops   (17.08.2005 в 19:34)
 

простите не понял, где в phpmyadmin textarea. Все что я заметил, - это поле sql-запросов

   
 
 автор: Axxil   (18.08.2005 в 10:29)   письмо автору
 
   для: Vadim777   (18.08.2005 в 10:26)
 

поле sql запросов это и есть textarea. :)

   
 
 автор: Vadim777   (18.08.2005 в 11:51)   письмо автору
 
   для: Axxil   (18.08.2005 в 10:29)
 

капец!

   
 
 автор: cheops   (18.08.2005 в 13:40)   письмо автору
 
   для: Vadim777   (18.08.2005 в 10:26)
 

Имеется ввиду пункт меню "SQL"

   
 
 автор: Axxil   (17.08.2005 в 19:52)   письмо автору
 
   для: Vadim777   (17.08.2005 в 18:40)
 

>А как сделать одной таблицей?
У вас каждая рубрика это отдельная таблица. Это неэкономично
Сделайте одну таблицу
id | name | para | firma | rubrika_id
и ещё одну
rubrica_id | rubrika_name
1 | com
2 | pro
3 | mon

вот теперь во второй таблице у вас рубрики и теперь все записи вы делаете в первую таблицу и указываете в поле rubrika код интересующей рубрики из второй таблицы.

   
 
 автор: Vadim777   (18.08.2005 в 10:16)   письмо автору
 
   для: Axxil   (17.08.2005 в 19:52)
 

Спасибо! логично.

   
Rambler's Top100
вверх

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