error in your SQL syntax
8 отговора
0 прегледа
error in your SQL syntax
Инсталирал съм си XAMPP, но от вчера започнах да получавам ето това:
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 '' at line 1 SQL:SELECT * FROM user_catalogs WHERE user_id=
За какво иде реч според вас и как се оправя?
Позачудих се в кой клуб да попитам и реших, че е този - по-често се пише в него, но ако някой има по-добра идея нека я сподели.
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 '' at line 1 SQL:SELECT * FROM user_catalogs WHERE user_id=
За какво иде реч според вас и как се оправя?
Позачудих се в кой клуб да попитам и реших, че е този - по-често се пише в него, но ако някой има по-добра идея нека я сподели.
Re: error in your SQL syntax
Това е по скоро за клуб Бази данни. Несъответствие между версии на PHP и съответно MySQL може да доведе до този проблем, но може и да е друга причина. Трябва да погледнеш кода на PHP'to. Интересното е, че не ти посочва поле от базата данни в което възниква грешката, затова трябва да погледнеш PHP какво се опитва да достъпи. Или направо си ги инсталирай наново, ако не ти се занимава :)
Re: error in your SQL syntax
> ... user_id=
трябва да има нещо след равното на user_id
трябва да има нещо след равното на user_id
Re: error in your SQL syntax
Хммм.
При положение че са от XAMPP би трябвало да не си противоречат или нещо греша...
Но май ми е по-лесно да ги преинстална.
При положение че са от XAMPP би трябвало да не си противоречат или нещо греша...
Но май ми е по-лесно да ги преинстална.
Re: error in your SQL syntax
Публикувам кода.
Гледах за кавички или други недописани знаци.
<?php
include 'common.php';
if ($_SESSION['is_logged'] !== true) {
if($_POST['fs']==1)
{
$new_name=addslashes(trim($_POST['new_folder_name']));
if($strlen($new_name)>1)
{
$rs=run_q('SELECT COUNT(*) as cnt FROM user_catalogs
WHERE user_id='.$_SESSION['user_id'].' AND name="'.$new_name.'"');
$row=mysql_fetch_assoc($rs);
if($row['cnt']==0)
{
run_q('INSERT INTO user_catalogs (user_id,name) VALUES
('.$_SESSION['user_id'].',"'.$new_name.'")');
}
else
{
$error[]='Името съществува!';
}
}
else
{
$error[]='Въведете име';
}
}
$folders=run_q('SELECT * FROM user_catalogs WHERE user_id='.$_SESSION['user_id']);
include 'templates/header.php';
include 'templates/user_folders.php';
include 'templates/footer.php';
} else {
header('Location: index.php');
exit;
}
Гледах за кавички или други недописани знаци.
<?php
include 'common.php';
if ($_SESSION['is_logged'] !== true) {
if($_POST['fs']==1)
{
$new_name=addslashes(trim($_POST['new_folder_name']));
if($strlen($new_name)>1)
{
$rs=run_q('SELECT COUNT(*) as cnt FROM user_catalogs
WHERE user_id='.$_SESSION['user_id'].' AND name="'.$new_name.'"');
$row=mysql_fetch_assoc($rs);
if($row['cnt']==0)
{
run_q('INSERT INTO user_catalogs (user_id,name) VALUES
('.$_SESSION['user_id'].',"'.$new_name.'")');
}
else
{
$error[]='Името съществува!';
}
}
else
{
$error[]='Въведете име';
}
}
$folders=run_q('SELECT * FROM user_catalogs WHERE user_id='.$_SESSION['user_id']);
include 'templates/header.php';
include 'templates/user_folders.php';
include 'templates/footer.php';
} else {
header('Location: index.php');
exit;
}
Re: error in your SQL syntax
Сигурен ли си, че $_SESSION['user_id'] не е празно? И какво прави run_q, видях, че не си я дал.
Re: error in your SQL syntax
Eдна кавичка не си беше на мястото.
Благодаря за помощта - ако не бях постнал тук, то нямаше да се амбицирам и да потърся грешката.
Освен това научих още много полезни неща за релационните бази.
Благодаря за помощта - ако не бях постнал тук, то нямаше да се амбицирам и да потърся грешката.
Освен това научих още много полезни неща за релационните бази.
Re: error in your SQL syntax
Това струва ми се че е упражнение за по-напреднали.
Иначе преборих се с проблема.
Иначе преборих се с проблема.
Re: error in your SQL syntax
И за посирането се плаща... Даже там често има много мънита.
Напредвам.
Напредвам.