Различные вопросы по PHP и MySQL

249K
.
The Frontend-Warrior
# Koenig (22.05.2016 / 11:46)
Blade, надо опенсервер ставить гг, жёсткий помер
Cпасибо, я уже на цикле написал всё это хозяйство
.
посмотрите пожалуйста код. когда нажимаю сделать ставку эффект на скрине... что в коде не так?
define('_IN_JOHNCMS', 1);

$textl = 'Сделать ставку';
require('../incfiles/core.php');
require('../incfiles/head.php');

if($user_id)
{
  $ratField = 'balans'; // Поле с рейтингом в таблице `users`
  $ratRes = mysql_fetch_array(mysql_query("SELECT `" . $ratField . "` FROM `users` WHERE `id` = $user_id;"));
  $rat = $ratRes[$ratField];
}

if(!$user_id)
  header("Location: index.php");

if(empty($_GET['id']) || !ctype_digit($_GET['id']))
  header("Location: index.php");
$id = $_GET['id'];

$game = mysql_fetch_array(mysql_query("SELECT * FROM `t_games` WHERE `id` = $id;"));
if(!$game || $game['end'] > time())
  header("Location: $path");

if($game['end'] > time())
{
  $teams = explode('|', $game['teams']); $teamsCount = sizeof($teams);
  $coefs = explode('|', $game['coefs']);

  echo '<div class="phdr">Сделать ставку</div>';
  echo '<div class="gmenu">На вашем счету: ' . $rat . '</div>';
  if($rat >= 10)
  {
    if($_POST['submit'])
    {
        $winner = FALSE;
        if(!empty($_POST['winner']) && ctype_digit($_POST['winner']))
            $winner = $_POST['winner'];
        $mil = FALSE;
        if(!empty($_POST['mil']) && ctype_digit($_POST['mil']) && $_POST['mil'] >= 10 && $_POST['mil'] <= $rat)
            $mil = $_POST['mil'];

        if($winner && $mil)
        {
            $query = mysql_query("INSERT INTO `t_mils` VALUES(0, '" . $id . "', '" . $user_id . "', '" . $mil . "', '" . $winner . "');");
            if($query)
            {
                mysql_query("UPDATE `users` SET `" . $ratField . "` = (`" . $ratField . "`) - $mil;");
                header("Location: index.php");
            }
            else
                echo '<div class="rmenu">Произошла ошибка. Приносим вам свои извинения.</div>';
        }
        else
            echo '<div class="rmenu">Вы заподнили не все поля либо заполнили их не верно</div>';
    }
    echo '<div class="menu">';
    echo '<form action="?id=' . $id . '" method="POST">';
    echo 'На кого вы ставите:<br/>';

    for($i = 0; $i < $teamsCount; $i++)
    {echo '<label><input type="radio" name="winner" value="' . ($i + 1) . '"/>' . $teams[$i] . ' (' . $coefs[$i] . ')</label><br/>';}
    echo '<label><input type="radio" name="winner" value="' . ($teamsCount + 1) . '"/>Ничья (' . $coefs[$teamsCount] . ')</label>';

    echo '<br/><label>Ставка: <input type="text" name="mil" value="10" maxlength="' . strlen($rat) . '"/>(10-' . $rat . ')</label><br/>';
    echo '<input type="submit" name="submit" value="Поставить"/>';
    echo '</form>';
    echo '</div>';
  }
  else
    echo '<div class="rmenu">У вас не достаточно балланса для ставки! Минимальная ставка: 10</div>';
}
else
  echo '<div class="rmenu">Приём ставок окончен</div>';

echo '<div class="phdr"><a href="index.php">Назад</a></div>';

require('../incfiles/end.php');

?>
Прикрепленные файлы:
.
(\/)____o_O____(\/)
Alexis22, закоментируй header("Location ...")
и допиши какой нибудь текст, например номер строки, тогда ошибку станет проще искать
.
(\/)____o_O____(\/)
Alexis22, и скобки в запросе на 48 строке не верно стоят
.
# Koenig (24.05.2016 / 13:29)
Alexis22, закоментируй header("Location ...")
и допиши какой нибудь текст, например номер строки, тогда ошибку станет проще искать
все закоментировать что связанно с header lokation?
.
(\/)____o_O____(\/)
Alexis22, и ниже в том же условии где редирект
echo "12";
где 12 это номер строки
.
(\/)____o_O____(\/)
ещё может быть проблема в том, что после редиректа не стоит exit и код продолжает выполняться
.
# Koenig (24.05.2016 / 13:40)
ещё может быть проблема в том, что после редиректа не стоит exit и код продолжает выполняться
закоментировал все header("Location ...") вроде работает... спасибо
.
нет... не норм... у других юзеров баланс почему то в минус идет
.
(\/)____o_O____(\/)
Alexis22, надо смотреть условия, где то может знак перепутал <>
Всего: 7969