такой вопрос есть у меня Есть база данных. В ней две таблицы. Как мне сделать запрос на запись ко второй таблице База данных называется users и первая табилца тоже users PHP: $link = mysql_connect("localhost", "root", "") or die("Не могу подключиться" ); // сделать test текущей базой данных mysql_select_db('users', $link) or die ('Не могу выбрать БД'); $query = "INSERT INTO users VALUES(NULL,$_POST['proizv'],$_POST['model'],$_POST['a1'],$_POST['god'])"; $result = mysql_query($query);
вы думаете я идиот mysql_select_db берёт в параметр базу данных именно а не таблицу и в запросе тоже $query = "INSERT INTO users VALUES(NULL,$_POST['proizv'],$_POST['model'],$_POST['a1'],$_POST['god'])"; идёт обращение к базе или таблице?
Конечно. В документации отчетливо сказано о синтаксисе запроса. mysql_select_db выбирает БД, с которой работать. Это функция РНР. Её можно заменить спокойно на запрос "use dbname" Точно так же и всё остальное - запрос к таблице? Измени имя этой таблицы в запросе.
тоесть здесь идёт выбор таблицы $query = "INSERT INTO users VALUES(NULL,$_POST['proizv'],$_POST['model'],$_POST['a1'],$_POST['god'])"; а здесь именно выбор бызы mysql_select_db('users', $link) or die ('Не могу выбрать БД');
Хорошо тогда почему он мне не записывает данные в таблицу.Уже всё перепробовал. У меня в таблице 5 полей.И типы правильно всё делал
Смотри mysql_error Скорее всего несоответствие полей тем, что в запросе. Не забывай, что стоит обрамлять кавычками текстовые поля.
так вот он ошибку не даёт . если там добавить сценарий.Он скажет что переменной $result не существует. Тоесть фалсе даёт.Значит запрос дохнет.А кавычками тоже делал не помогает.А ели у меня запрос меньще чем полей в базе.Он же должен записать только те поля что есть по идеи?Или из за этого дохнет?
тут теперь новый вопрос назрел запрос не хочет работать с $_POST['proizv'] как правильно написать $query = "INSERT INTO machines VALUES('".$_POST['proizv']"','qweew','145000','1981','dsdfaa')";
спасибо дружище.А то везде искал не мог найти.Я так понимаю эти точки нужны как операция конкатенация строк?
tommyangelo И зачем было использовать двойные кавычки?? PHP: <?php $q = 'INSERT INTO table VALUES (\''.$value1.'\', '.(int)$value2.', '.(int)$value3.', \'text row\', 1111)';
jei Да, конкатенация, соединение строк. admyx Если внимательно посмотреть, то у человека был готовый запрос, но с синтаксической ошибкой. Я лишь указал ему на неё. Пользуйся какими нравится, никто ж не против)))))
$query = "INSERT INTO machines VALUES('{$_POST['proizv']}', 'qweew', '145000', '1981', 'dsdfaa')"; в этом-то и заключается вся прелесть двойных кавычек - переменные обрабатываются внутри строки самим парсером. ПЫСЫ: но также это открывает дырку, если непрослешировать данные.