Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP: базы данных
Войти
Регистрация
Восстановить пароль
 
HeroNax
0 / 0 / 3
Регистрация: 02.11.2017
Сообщений: 29
#1

Рулетка на PHP+MySQL

28.11.2017, 17:12. Просмотров 279. Ответов 1
Метки нет (Все метки)

Есть такой код, я не знаю в чём проблема, но почему с клиентом не совпадают данные... То есть, я отправляю результатом цвет, а уже в программе строю саму рулетку, всё работает, вот только в БД всё совсем иначе, как буд-то нет проверки на цвет
Как правильно проверять переменную $BET, которая получена методом POST?
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<?php
include "db.php";
$SCORE = $_POST['score'];
$USERNAME = $_POST['username'];
$PASSWORD = $_POST['password'];
$BET = $_POST['bet'];//цвет, на который поставил игрок
$BET_SCORES = $_POST['bet_score'];//очки, которые поставил игрок
$RAN = rand(1,100);
$result = mysqli_query($connection,"SELECT * FROM users WHERE username = '$USERNAME'");
$result2 = mysqli_query($connection,"SELECT score FROM users WHERE username = '$USERNAME'");
$row = $result->fetch_array(MYSQLI_BOTH);
if (password_verify($PASSWORD, $row['w_password'])) 
{ 
    mysqli_query($connection,"UPDATE users SET score=score-(".floatval($_POST['bet_score']).") WHERE username='$USERNAME'");
    if ($RAN <45)
    {
        if ($BET == "red")//если получили из клиента этот цвет, то мы выиграли
        {
            {
            mysqli_query($connection,"UPDATE users SET score=score+(".floatval($_POST['bet_score'])."*2) WHERE username='$USERNAME'");
            echo("red");
            }
        }
    }
    if ($RAN >=45 and $RAN <=55)
    {
        if ($BET == "green")//если получили из клиента этот цвет, то мы выиграли
        {
        mysqli_query($connection,"UPDATE users SET score=score+(".floatval($_POST['bet_score'])."*14) WHERE username='$USERNAME'");
        echo("green");
        }
    }
    if ($RAN >55)
    {
        if  ($BET == "black")//если получили из клиента этот цвет, то мы выиграли
        {
            {
            mysqli_query($connection,"UPDATE users SET score=score+(".floatval($_POST['bet_score'])."*2) WHERE username='$USERNAME'");
            echo("black");
            }
        }
    }
}
?>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.11.2017, 17:12
Ответы с готовыми решениями:

PHP & MySQL передача в запрос SQL значения переменной из PHP
Здравствуйте. Мне необходимо передать в SQL-запрос значение любой...

передать параметр кнопкой на php скрипт delete.php /mysql
передать параметр кнопкой на php скрипт или как ещё это назвать я хз :D в...

А что если на многоядерном процессоре на один проц повесить mysql а на другой php,чтобы php не дожидался окончания выполнения INSERT ?
Как известно mysql занимает определённое время выполнения скрипта php. В нём...

Php,pdo, mysql+php,
К примеру у меня есть функция добавления в бд через PDO Так вот, а если я...

Php и MySql
Помогите, пожалуйста! Мне не нужно решение и т д. Просто ход решения, что нужно...

1
ytf
224 / 245 / 183
Регистрация: 15.08.2017
Сообщений: 1,335
02.12.2017, 08:49 #2
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
// скопируйте содержимое https://github.com/plohoyav/php_mysql_user_register_login/blob/master/db.php в файл db2.php
// измените в файле db2.php настройки соединения с бд
require 'db2.php'; 
 
include "db.php";
extract($_POST);
$ran = rand(1,100);
$row = mr("SELECT * FROM users WHERE ".sqlwhere(array("username" => $USERNAME)));
 
if (password_verify($password, $row['w_password'])) 
{ 
   $bet_score = floatval($bet_score);
   $balans = floatval($row['score'])-$bet_score;
   if ($ran<45)  { if ($bet=="red") { $balans += $bet_score*2; echo "red"; } }
   elseif ($ran<=55)  { if ($bet=="green") { $balans += $bet_score*14; echo "green"; } }
   else  { if ($bet=="black") { $balans += $bet_score*2; echo "black"; } }
 
   mq("UPDATE users SET ".sqlset(array("score"=>$balans))." WHERE ".sqlwhere(array("username"=>$USERNAME)));
}
?>
Добавлено через 1 минуту
можно попробовать запись переданных браузером клиента данных в лог-файл, чтобы вы могли их проверить
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.12.2017, 08:49

PHP+ MYSQL
Друзья, есть такая задумка, попробую доходчиво описать и прошу вас помочь, по...

Php и mysql
php и mysql как сделать чтоб функция запускалось раз в 1 часа И можно пример...

php mySql
Написал код на php с использаованием базы данных. Появляеться вот такая ошибка:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru