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

Форум MySQL

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

 

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

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

тема: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near
 
 автор: dimonich2004   (15.02.2008 в 02:59)   письмо автору
 
 

выдает такую ошибку:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(useremile,userlist username,userpass,usercity) VALUES ('fg@e.de','gggg','ttt','' at line 1


<?
$q
="INSERT INTO (useremile,userlist username,userpass,usercity) VALUES ('$useremile','$username','$userpass','$usercity')";
if(
mysql_query($q))
{
        echo 
"<br><hr>Вы зарегистрированы! ".$username."<a href='index.php'><p class='title'> Перейти на Главную</p></a><br><br><br><br><br>";
        }
        else
        {
        echo 
"<hr><br><br><br><a href='registr.php'><p class='title'>Ошибка при добавлении пользователя!</p></a><br><br><br><br><br>";
                                           }
?>

   
 
 автор: dima2207   (15.02.2008 в 03:08)   письмо автору
 
   для: dimonich2004   (15.02.2008 в 02:59)
 


<? 
$q
="INSERT INTO (useremile,userlist username,userpass,usercity) 
VALUES ('"
.mysql_escape_string($useremile)."',
'"
.mysql_escape_string($username)."',
'"
.mysql_escape_string($userpass)."',
'"
.mysql_escape_string($usercity)."')"
if(
mysql_query($q)) 

        echo 
"<br><hr>Вы зарегистрированы! ".$username.
"<a href='index.php'><p class='title'> Перейти на Главную
</p></a><br><br><br><br><br>"

        } 
        else 
        { 
        echo 
"<hr><br><br><br><a href='registr.php'>
<p class='title'>Ошибка при добавлении пользователя!</p>
</a><br><br><br><br><br>"

?> 

   
 
 автор: dimonich2004   (15.02.2008 в 03:11)   письмо автору
 
   для: dima2207   (15.02.2008 в 03:08)
 

а пояснить можно почему так ?!
=-=-=
такой то запрос работает....
<?
    
include ("BLOCKS/connect.php");
    
$result=mysql_query("INSERT INTO coments (id_k,text_k,date_k,author) VALUES ('$id','$text_k','$date_k','$author')");
    if (
$result == 'true')
    
    {
    echo 
"<p>Ваш комент Добавлен!</p>";
    }
    else 
    {
    echo 
"<p>Ваш комент НЕ Добавлен!</p>";
    }
    
    }
    else
    {
    echo
"<p>Вы ввели не всю информацию!</p>";
    }>?

или это из за поля куда я пытаюсь засунуть EMILE,!?

   
 
 автор: dima2207   (15.02.2008 в 03:17)   письмо автору
 
   для: dimonich2004   (15.02.2008 в 03:11)
 

во первых вы неэкранировали переменные , а во вторых , у вас неправельный формат подстановки переменной в запрос !
Экранируйте переменные !

   
 
 автор: dimonich2004   (15.02.2008 в 03:22)   письмо автору
 
   для: dima2207   (15.02.2008 в 03:17)
 

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(useremile,userlist username,userpass,usercity) VALUES ('asd@ewew.de','asdasd','' at line 1

   
 
 автор: dima2207   (15.02.2008 в 03:43)   письмо автору
 
   для: dimonich2004   (15.02.2008 в 03:22)
 

Если у вас стоит автоинкремент , то переменную $id нужно опустить .

   
 
 автор: dimonich2004   (15.02.2008 в 03:46)   письмо автору
 
   для: dima2207   (15.02.2008 в 03:43)
 

q

   
 
 автор: mechanic   (15.02.2008 в 09:32)   письмо автору
 
   для: dimonich2004   (15.02.2008 в 02:59)
 

а простите insert into КУДА? ..
таблицу то надо указать!
и что за пробел между userlist и username?

это-то конечно будет работать, тут и таблица coments указана, и всяких пробелов в названии полей нет
$result=mysql_query("INSERT INTO coments (id_k,text_k,date_k,author) VALUES ('$id','$text_k','$date_k','$author')");

   
 
 автор: shmel79   (27.02.2008 в 09:35)   письмо автору
 
   для: mechanic   (15.02.2008 в 09:32)
 

Народ, так же проблема... только вот вроде бы у меня таблица указана) Никак не могу понять где ошибка....

<?
$result 
mysql_query ("INSERT INTO vistup (title,date,where,address,text,imgpath) VALUES ('$title','$date','$where','$address','$text','$imgpath')");


if (
$result == 'true') {echo "<p>Информация о выступлении успешно добавлена в базу.</p>";}
else {echo 
"<p>Ошибка. Информация о выступлении не добавлена в базу.</p>";}
?>

   
 
 автор: ONYX   (27.02.2008 в 09:51)
 
   для: shmel79   (27.02.2008 в 09:35)
 

Во первых кавычки в php есть разница меду кавычками и апострофами: Кавычки допускают вставку содержимого переменной, а опострафы нет, в твоем случае ты вставлял в базу имена переменных.
Посоветую вставить вот такой запрос:

"INSERT INTO vistup (title,date,where,address,text,imgpath) VALUES ('".$title."','".$date."','".$where."','".$address."','".$text."','".$imgpath."')"

   
 
 автор: shmel79   (27.02.2008 в 09:59)   письмо автору
 
   для: ONYX   (27.02.2008 в 09:51)
 

Нет все-равно не рсабатывает! ...
Пишет...

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'where,address,text,imgpath) VALUES ('safasf','asfasfasf','asfasf


<?
if (isset($title) && isset($where) && isset($date) && isset($address) && isset($text) && isset($imgpath))
{
$text=filtering($text);

/* Здесь пишем что можно заносить информацию в базу */
$result mysql_query ("INSERT INTO vistup (title,date,where,address,text,imgpath) VALUES ('".$title."','".$date."','".$where."','".$address."','".$text."','".$imgpath."')");
?>


может быть ошибка в проверки перменных?

   
 
 автор: ONYX   (27.02.2008 в 10:05)   письмо автору
 
   для: shmel79   (27.02.2008 в 09:59)
 

В этом случае есть толко два варианта либо имена полей в запросе и в таблице бд не совпадают, либо мускул ругается на where т.к. это одна из команд запроса.

   
 
 автор: olejek   (27.02.2008 в 10:27)   письмо автору
 
   для: ONYX   (27.02.2008 в 10:05)
 

>Во первых кавычки в php есть разница меду кавычками и апострофами: Кавычки допускают вставку содержимого переменной, а опострафы нет, в твоем случае ты вставлял в базу имена переменных.

Вы не совсем правы.
<?
'select $var from' // переменная не интерполируется
"select $var from" // переменная интерполируется
"select '$var' from" // переменная интерполируется, только в данном случае значение переменной будет заключено в одинарные кавычки. 
?>

Для вставки строки в базу данных нужно делать именно так (один из вариантов).

Так что вторая часть запроса правильная:
VALUES ('$title','$date','$where','$address','$text','$imgpath')"


А вот со первой действительно проблемы:
INSERT INTO vistup (title,date,where,address,text,imgpath) 

Зачем же Вы поле назвали "where"??

   
 
 автор: shmel79   (27.02.2008 в 13:32)   письмо автору
 
   для: olejek   (27.02.2008 в 10:27)
 

когда называл долго сомневался как отреагирует mySQL )

   
 
 автор: olejek   (27.02.2008 в 13:46)   письмо автору
 
   для: shmel79   (27.02.2008 в 13:32)
 

Нет, ну конечно, такой запрос, например, будет работать:
SELECT `where` , `from` FROM `where` 

если имя таблицы или поля заключать в обратные кавычки.
Но называть ключевыми словами таблицы и поля таблиц крайне не рекомендуется.

   
 
 автор: shmel79   (27.02.2008 в 14:15)   письмо автору
 
   для: olejek   (27.02.2008 в 13:46)
 

Да сменил название с where на другое... и все заработало. Спасибо.

   
Rambler's Top100
вверх

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