Ошибка при добавлении "фруктов"

  • Автор темы IgrokNEW
  • Дата начала
IgrokNEW
Участник
Сообщения
23
Реакции
2
Добрый день. Столкнулся вот с такой ошибкой, не могу понять в чем именно проблема. Добавил еще 3 якобы фрукта. При покупке пишет.

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 ' p1_a = p1_a + 1, last_sbor = IF(last_sbor > 0, last_sbor, '1423979913') ' at line 1
 
progamekg
Участник
Сообщения
89
Реакции
28
Мне кажется, что Вы в БД забыли создать фрукты.
 
IgrokNEW
Участник
Сообщения
23
Реакции
2
Создано все и везде, но ошибка в синтаксисе::

# Проверяем средства пользователя
$need_money = $sonfig_site["amount_p_".$citem];
if($need_money <= $user_data["money_b"]){

if($user_data["last_sbor"] == 0 OR $user_data["last_sbor"] > ( time() - 60*20) ){

$to_referer = $need_money * 0.1;
# Добавляем дерево и списываем деньги
$db->Query("UPDATE db_users_b SET money_b = money_b - $need_money, $citem = $citem + 1,
last_sbor = IF(last_sbor > 0, last_sbor, '".time()."') WHERE id = '$usid'");

# Вносим запись о покупке
$db->Query("INSERT INTO db_stats_btree (user_id, user, tree_name, amount, date_add, date_del)
VALUES ('$usid','$usname','".$array_name[$item]."','$need_money','".time()."','".(time()+60*60*24*15)."')");
 
DaTaLiFe-EnGiNo
Участник
Сообщения
126
Реакции
4
IgrokNEW написал(а):
Создано все и везде, но ошибка в синтаксисе::

# Проверяем средства пользователя
$need_money = $sonfig_site["amount_p_".$citem];
if($need_money <= $user_data["money_b"]){

if($user_data["last_sbor"] == 0 OR $user_data["last_sbor"] > ( time() - 60*20) ){

$to_referer = $need_money * 0.1;
# Добавляем дерево и списываем деньги
$db->Query("UPDATE db_users_b SET money_b = money_b - $need_money, $citem = $citem + 1,
last_sbor = IF(last_sbor > 0, last_sbor, '".time()."') WHERE id = '$usid'");

# Вносим запись о покупке
$db->Query("INSERT INTO db_stats_btree (user_id, user, tree_name, amount, date_add, date_del)
VALUES ('$usid','$usname','".$array_name[$item]."','$need_money','".time()."','".(time()+60*60*24*15)."')");
проверь закрытые символы в каких то запросах или нет и скорее всего не соответствует база твоих фруктов!поищи другой запрос аналог твоей фермы!
 
IgrokNEW
Участник
Сообщения
23
Реакции
2
Такс сейчас попробую, о результатах отпишусь
 
DaTaLiFe-EnGiNo
Участник
Сообщения
126
Реакции
4
IgrokNEW написал(а):
Такс сейчас попробую, о результатах отпишусь
так у тебя база полная но где то запрос не закрыт!!!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 ' p1_a = p1_a + 1, last_sbor = IF(last_sbor > 0, last_sbor, '1423979913') ' at line 1 вот не выделен он 2 ' p1_a = p1_a + 1, только одно!просмотри получше закрой всё как положено!после отпишись
 
IgrokNEW
Участник
Сообщения
23
Реакции
2
Странно проверил все то же самое.
 
DaTaLiFe-EnGiNo
Участник
Сообщения
126
Реакции
4
у тебя про что ферма?про фрукты или про что?
 
DaTaLiFe-EnGiNo
Участник
Сообщения
126
Реакции
4
IgrokNEW написал(а):
Странно проверил все то же самое.
ВОТ попробуй этот установи этот чистый без каких либо дыр!
извините не удаляйте и не баньте я помогаю человеку как видите сами это не спам
скачать
 
Последнее редактирование модератором:
IgrokNEW
Участник
Сообщения
23
Реакции
2
  • #10
Нет, там повара, "фрукты" образно. Изменял все параметры и в бд тоже, но понять не могу в чем проблема. Написано все верно.

Вот мой пхп запрос:
# Покупка нового провара
if(isset($_POST["item"])){

$array_items = array(1 => "p1_a", 2 => "p2_a", 3 => "p3_a", 4 => "p4_a", 5 => "p5_a", 6 => "p6_a", 7 => "p7_a", 8 => "p8_a");
$array_name = array(1 => "Шеф повар 1 звезда", 2 => "Шеф повар 2 звезды", 3 => "Шеф повар 3 звезды", 4 => "Шеф повар 4 звезды", 5 => "Шеф повар 5 звезд", 6 => "Шеф повар 6 звезд", 7 => "Шеф повар 7 звезд", 8 => "Шеф повар 8 звезд");
$item = intval($_POST["item"]);
$citem = $array_items[$item];

if(strlen($citem) >= 3){

# Проверяем средства пользователя
$need_money = $sonfig_site["amount_p_".$citem];
if($need_money <= $user_data["money_b"]){

if($user_data["last_sbor"] == 0 OR $user_data["last_sbor"] > ( time() - 60*20) ){

$to_referer = $need_money * 0.1;
# Добавляем дерево и списываем деньги
$db->Query("UPDATE db_users_b SET money_b = money_b - $need_money, $citem = $citem + 1,
last_sbor = IF(last_sbor > 0, last_sbor, '".time()."') WHERE id = '$usid'");

# Вносим запись о покупке
$db->Query("INSERT INTO db_stats_btree (user_id, user, tree_name, amount, date_add, date_del)
VALUES ('$usid','$usname','".$array_name[$item]."','$need_money','".time()."','".(time()+60*60*24*15)."')");

echo "<center><font color = 'green'><b>Шеф повар успешно нанят!</b></font></center><BR />";

$db->Query("SELECT * FROM db_users_b WHERE id = '$usid' LIMIT 1");
$user_data = $db->FetchArray();

}else echo "<center><font color = 'red'><b>Перед тем как нанять нового повара, заберите готовую пиццу!</b></font></center><BR />";

}else echo "<center><font color = 'red'><b>Недостаточно монет для покупки</b></font></center><BR />";

}else echo 222;

}

?>
 
DaTaLiFe-EnGiNo
Участник
Сообщения
126
Реакции
4
  • #11
я тебе выложил чистый модуль установи его попробуй!если пойдет то у тебя эти модули не совместимы с твоей базой
 
kvozimir
Участник
Сообщения
1.935
Реакции
409
ICQ
734713 734713
Skype
  • #12
andreikaja написал(а):
ВОТ попробуй этот установи этот чистый без каких либо дыр!
извините не удаляйте и не баньте я помогаю человеку как видите сами это не спам
нормально ссылка на сторонний ресурс с инструкцией по добавлению в ручную которую писал я

и данный модуль есть на форуме с той же самой инструкцией

ссылку удалил
 
kvozimir
Участник
Сообщения
1.935
Реакции
409
ICQ
734713 734713
Skype
  • #13
IgrokNEW написал(а):
Нет, там повара, "фрукты" образно. Изменял все параметры и в бд тоже, но понять не могу в чем проблема. Написано все верно.

Вот мой пхп запрос:
# Покупка нового провара
if(isset($_POST["item"])){

$array_items = array(1 => "p1_a", 2 => "p2_a", 3 => "p3_a", 4 => "p4_a", 5 => "p5_a", 6 => "p6_a", 7 => "p7_a", 8 => "p8_a");
$array_name = array(1 => "Шеф повар 1 звезда", 2 => "Шеф повар 2 звезды", 3 => "Шеф повар 3 звезды", 4 => "Шеф повар 4 звезды", 5 => "Шеф повар 5 звезд", 6 => "Шеф повар 6 звезд", 7 => "Шеф повар 7 звезд", 8 => "Шеф повар 8 звезд");
$item = intval($_POST["item"]);
$citem = $array_items[$item];

if(strlen($citem) >= 3){

# Проверяем средства пользователя
$need_money = $sonfig_site["amount_p_".$citem];
if($need_money <= $user_data["money_b"]){

if($user_data["last_sbor"] == 0 OR $user_data["last_sbor"] > ( time() - 60*20) ){

$to_referer = $need_money * 0.1;
# Добавляем дерево и списываем деньги
$db->Query("UPDATE db_users_b SET money_b = money_b - $need_money, $citem = $citem + 1,
last_sbor = IF(last_sbor > 0, last_sbor, '".time()."') WHERE id = '$usid'");

# Вносим запись о покупке
$db->Query("INSERT INTO db_stats_btree (user_id, user, tree_name, amount, date_add, date_del)
VALUES ('$usid','$usname','".$array_name[$item]."','$need_money','".time()."','".(time()+60*60*24*15)."')");

echo "<center><font color = 'green'><b>Шеф повар успешно нанят!</b></font></center><BR />";

$db->Query("SELECT * FROM db_users_b WHERE id = '$usid' LIMIT 1");
$user_data = $db->FetchArray();

}else echo "<center><font color = 'red'><b>Перед тем как нанять нового повара, заберите готовую пиццу!</b></font></center><BR />";

}else echo "<center><font color = 'red'><b>Недостаточно монет для покупки</b></font></center><BR />";

}else echo 222;

}

?>
у тебя в базе так и записаны запросы с p1_a до p8_a ?? таблица db_user_b
 
IgrokNEW
Участник
Сообщения
23
Реакции
2
  • #14
Да, все запросы так и прописаны.
 
MegaGoblin
PHP, JS, AJAX, CSS, HTML
Участник
Сообщения
322
Реакции
72
  • #15
IgrokNEW написал(а):
Да, все запросы так и прописаны.
Попробуй убрать IF-блок в запросе на время, мне кажется что с ним что-то не так=)
И я обычно названия столбцов обрамляю обратной кавычкой: `column_name`
Попробуйд добавить везде.
 
Сверху