|
|
|
| привет!
у меня есть старый скрипт .. который работал под php 4.0.0..
недавно щзапустил его под 4.3.11 - и нонсанс не пашет!
решил посмотреть что за ерунда и вот чиго выходит...
в БД три колонки pole1 pole2 pole3...
$pole1="aaa";
$pole2="bbb";
$pole3="ccc";
$k="INSERT INTO g (pole1, pole2, pole3) VALUES (\"$pole1\", \"$pole2\",\"$pole3\")";
- этот код работает
$k="INSERT INTO g VALUES (\"$pole1\", \"$pole2\",\"$pole3\")";
- и тотт тоже..
а вот что было написано под 4.0.0
$k="INSERT INTO g (pole1, pole3) VALUES (\"$pole1\",\"$pole3\")";
- и оно не пашет!!! - блин как же тогда записывать выборочно .. как в примере - я хочу записать тока в поля 1 и 3 ... а нет! не пашет .. что за ерунда???!!!1 | |
|
|
|
|
|
|
|
для: moonfox
(26.11.2006 в 18:03)
| | возможно что второе поле в таблице не имеет значения по умолчанию..
и собственно какие ошибки возникают и после чего? если после mysql_query($k) то что возращает mysql_error()? | |
|
|
|
|
|
|
|
для: _Dreamer_
(26.11.2006 в 18:10)
| | Все три записи разрешены в любой версии mySQL. Смотри с настройками PHP экранирования кавычек. Вообще пиши все операции с MySQL в одиночных кавычках. Имя полей pole1 pole3 не должны содержать пробелов. Так что твоя запись в правльном изложении допусстима и работает.
mysql_query("INSERT INTO g (pole1, pole3) VALUES ('pole1', 'pole3')");
Единсвенное, если только pole1 не является ключем и индексом, а то может ты одно и тоже значение пихаешь в ключ? Тогда используй REPLACE INTO вместо INSERT INTO | |
|
|
|
|
|
|
|
для: XPraptor
(27.11.2006 в 00:42)
| | блин убрал \" заменил на ' - и стало работать!
отчего же раньше НЕ ругалося ? и все записывало... и ведь запись \" - не протеворечит синтаксису! | |
|
|
|
|
|
|
|
для: moonfox
(27.11.2006 в 11:34)
| | Противоречит=)) В MySQL нужно загонять либо одинарными либо обратными кавычками:) | |
|
|
|
|
|
|
|
для: Poison
(27.11.2006 в 11:37)
| | Не надо ля-ля.
В обычном режиме допустимы апострофы и двойные кавычки.
В режиме ANSI-совместимости допустимы только апострофы
Обратные косые кавычки вообще для литералов не применяются. Ими обрамляют метаданные - имена полей и таблиц. | |
|
|
|