ОБСУЖДЕНИЕ

Где косяк?

21 сообщений1 просмотровЗакрыта
#1
Не пойму где накосячил, глаза уже слипаются :D
Может кто видит где какаха сидит, подскажите) :
PHP

 <?
include './system/common.php';
include './system/user.php';
if ($user['g'] == $_POST['stavka'] OR $user['g'] > $_POST['stavka']) {
mysql_query("update `gold_play` set `name` = ".$user['login'].", `summa` = `summa` + '".$_POST['stavka']."' WHERE `id` = '1'");
mysql_query("update `users` set `g` = `g` - '".$_POST['stavka']."' where `id` = '".$user['id']."'");
header ('location: /gold_play.php');
}else{
header ('location: /gold_play.php?error');
}
?>

#2
С формой ввода всë чëтко, если что... :)
#3
WebNovichok,
SQL

include './system/common.php';
include './system/user.php';
if ($user['g'] == $_POST['stavka'] || $user['g'] > $_POST['stavka']) {
mysql_query("UPDATE `gold_play` SET `name` = '" . $user['login'] . "', `summa` = `summa` + '" . $_POST['stavka'] . "' WHERE `id` = '1'");
mysql_query("UPDATE `users` SET `g` = `g` - '" . $_POST['stavka'] . "' WHERE `id` = '" . $user['id'] . "'");
header ('location: /gold_play.php');
}else{
header ('location: /gold_play.php?error');
}


Попробуй.
#4
АрхангеЛ, Да не, с этим всë в порядке... Работало пока к user не инклюдил.
#5
WebNovichok, Этот файл находиться в корне?
#6
Здесь все, впорядке.
Смотри, может неправильное название переменных, таблиц или баз.
#7
код то дырявый
#8
ini_set('error_reporting', E_ALL);
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);

в самый верх, и узнаешь где косяк))
#9
MazaXakep, Это только начало) Я его еще дописывать буду... Типа тестовый...
#10
АрхангеЛ, Да
#11
Синтаксических ошибок нет, в чём конкретно проблема?
#12
СеРжЧеРНиК, Сам не пойму :(
Я ввожу число, нажимаю обработать, и по сути оно должно выполнить запись в базу данных а после вернуться в тот-же скрипт. Но оно при нажатии обработать, переходит в этот обработчик оставшись в нëм с белым экраном... И запись не производится.
#13
Исправил :)
Просто что-то в user.php мешало нормальной работе обработчика) Вот так всë заработало:
PHP

 <?php
ini_set('error_reporting', E_ALL); 
ini_set('display_errors', 1); 
ini_set('display_startup_errors', 1);
include './system/common.php';
include './system/functions.php';

      $id = _string(_num($_COOKIE['id']));
$password = _string($_COOKIE['password']);

    
       $q = mysql_query('SELECT * FROM `users` WHERE `id` = "'.$id.'" AND `password` = "'.$password.'"');
    $user = mysql_fetch_array($q);

if ($_POST['stavka'] > 0) {
if ($user['g'] == $_POST['stavka'] OR $user['g'] > $_POST['stavka']) {
mysql_query("update `gold_play` set `name` = '".$user['login']."', `summa` = `summa` + '".$_POST['stavka']."' WHERE `id` = '1'");
mysql_query("update `users` set `g` = `g` - '".$_POST['stavka']."' where `id` = '".$user['id']."'");
header ('location: /gold_play.php');
}
}else{
header ('location: /gold_play.php?error');
}
?>

#14
дыры закрой!
#15
Косяк говоришь?) делись!) :D
#16
sm996, Я в php еще новичëк)
Не подскажешь где именно и в чем заключаются дыры в этом коде? :)
А я уж проанализирую ошибки, и в будущем постараюсь их не допускать...
#17
WebNovichok, Нужео закрывать $_POST в htmlspecialchars()
Пример
это дыра $_POST['name']
это не дыра htmlspecialchars($_POST['name'])
С тебя + в анкету, к рейтенгу.
#18
В твоем случае _POST данные в базу заносятся не фильтрованными.
#19
sm996, Ух ты :)
Интересненько) Спасибо большое, + ккинул
#20
sm996, Точнее кинул тебе спасибо, а к рейтингу я почему то не могу поставить плюс...
Страница 1 из 2 · Всего записей: 21