За последние 24 часа нас посетили 22029 программистов и 997 роботов. Сейчас ищут 872 программиста ...

$_POST запрос

Тема в разделе "PHP для новичков", создана пользователем car1ot, 21 дек 2017.

  1. car1ot

    car1ot Новичок

    С нами с:
    26 май 2017
    Сообщения:
    21
    Симпатии:
    0
    HTML:
    1. <form method="POST" action="take" class="addform">
    2. <input type="text" name="wallet_id" class="addinput" placeholder="Пример: +71234567890" style="position: realtive; top: 100px; left: 165px;">
    3. <button id="addbutton" type="submit" class="account-button" style="position: realtive; top: 150px; left: 215px;"></button>
    4. </form>
    Когда ввожу в input name="wallet_id" значение "+71234567890" и посылаю пост запрос, то $_POST["wallet_id"] равно не тому, что я ввёл, а равно значению 4294967295. Что делать?

    Переменная $_POST["wallet_id"] отправляется с типом integer и номер телефона превращается в это значение: 4294967295. Что делать? Как выйти из ситуации? Как с POST запросом отправлять только СТРОКИ???

    PHP:
    1. <?php
    2.  
    3. require "db.php";
    4.  
    5. if (!$_SESSION["logged_user"]) {
    6.     header("Location: /home/auth");
    7. }
    8.  
    9. else {
    10.     if ($_GET) {
    11.         $user = R::findOne('users', 'profile_id = ?', array($_SESSION["logged_user"]->profile_id));
    12.      
    13.         if ($user->balance < $_GET['amount']) {
    14.             $err = "Вам не хватает монет для этой суммы.";
    15.         }
    16.         if ($_GET['amount'] < 200) {
    17.             $err = "Вывод от 200 руб.";
    18.         }
    19.         if (!$_GET['amount']) {
    20.             $err = "Введите сумму вывода.";
    21.         }
    22.         if ($_GET['amount'] <= 0) {
    23.             $err = "Введите сумму вывода.";
    24.         }
    25.         if ($_GET['amount'] == underfined) {
    26.             $err = "Введите сумму вывода.";
    27.         }
    28.         if ($user->add < 150) {
    29.             $err = "Пополните баланс на 150 руб чтобы выводить деньги!";
    30.         }
    31.         if (!$_GET['wallet_type']) {
    32.             $err = "Введите тип кошелька!";
    33.         }
    34.         if (!$_GET['wallet_id']) {
    35.             $err = "Введите номер кошелька!";
    36.         }
    37.         if (!$err) {
    38.             $user->balance -= $_GET['amount'];
    39.             R::store($user);
    40.             $_SESSION['logged_user']->balance = $user->balance;
    41.          
    42.             date_default_timezone_set("Latvia/Riga");
    43.             $date = date("Y/m/d")." ".date("H:i:s");
    44.             $log = R::dispense('userslog');
    45.             $log->datetime = $date;
    46.             $log->action = "Выплата: ".$_GET['amount'];
    47.             $log->profile_id = $_SESSION["logged_user"]->profile_id;
    48.             $log->fullname = $_SESSION["logged_user"]->first_name." ".$_SESSION["logged_user"]->last_name;
    49.             R::store($log);
    50.          
    51.             // Добавляем пользователя в выводы
    52.             $user = R::dispense('takes');
    53.             $user->datetime = $date;
    54.             $user->name = $_SESSION['logged_user']->first_name." ".$_SESSION['logged_user']->last_name;
    55.             $user->profile_id = $_SESSION['logged_user']->profile_id;
    56.             $user->sum = $_GET['amount'];
    57.             $user->wallet_id = $_GET["wallet_id"];
    58.             $user->wallet_type = $_GET['wallet_type'];
    59.             $user->status = "Ожидание выплаты";
    60.             R::store($user);
    61.          
    62.             $ok = "Запрос на выплату успешно обработан!";
    63.         }
    64.     }
    65. }
    66.  
    67. // if ($_SESSION["logged_user"]) { }
    68.  
    69. ?>
    70. <!DOCTYPE html>
    71. <html lang="ru">
    72. <head>
    73.     <meta charset="utf-8">
    74.  
    75.     <meta name="google-site-verification" content="LMPmXsj8IuGYpZQ5qOgRIWj-u-sar7afUDa3QCzszKM" />
    76.  
    77.     <meta name="yandex-verification" content="c06a860d623aa36c" />
    78.  
    79.     <!--<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">!-->
    80.  
    81.     <meta name="description" content="Увлекательные онлайн мини игры с выводом реальных денег и возможностью играть бесплатно. Успей заработать и повеселиться с знакомыми играми на сайте JOYSPIN.">
    82.  
    83.     <meta name="keywords" content="Рулетка, лото, лотерея, деньги, кейсы с деньгами, заработок, бесплатно, сайт для заработка, бесплытные рубли, открывать кейсы, cash, csgo-jackpot.bet, playscash, armycash, opcash, ranbox, зарабатывать,Coinscube, vs-cash, fast-lotto, ranbox, кейсы с деньгами, денежные кейсы, joyspin.ru, joyspin, сундуки, сундуки с деньгами, рулетка, денежная рулетка, денежная лотерея, хайп, джойспин, открыть кейс, открывать кейсы, открывать денежные сундуки, денежные коробки, денежные кейсы"/>
    84.  
    85.     <link rel="icon" href="images/favicon.ico">
    86.  
    87.     <title>Joyspin | Онлайн игры с выводом денег</title>
    88.  
    89.     <link href="https://fonts.googleapis.com/css?family=Roboto" rel="stylesheet">
    90.     <link href="https://fonts.googleapis.com/css?family=Roboto:500" rel="stylesheet">
    91.  
    92.     <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
    93.  
    94.     <link href="assets/css/style.css" rel="stylesheet">
    95. </head>
    96. <body>
    97. <?php include_once "pages/header.php"; ?>
    98.     <center>
    99.         <div class="container">
    100.             <div class="navbar-top-pro">
    101.                 <span class="pro-header">Вывод денег</span><br>
    102.                 <p class="pro-paragraph">
    103.                 Монеты можно обменять на реальные деньги и вывести на любой кошелёк!
    104.                 </p>
    105.             </div>
    106.             <div class="navbar-center-pro" style="height: 600px;">
    107.                 <form method="GET" action="take" class="addform">
    108.                  
    109.                     <span class="addinput-top-descr" style="position: realtive; left: 260px;">Количество монет</span>
    110.                     <input type="text" name="amount" id="addinput" class="addinput" placeholder="Пример: 30" style="position: realtive; left: 160px;"><br>
    111.                  
    112.                     <span class="addinput-top-descr" style="position: realtive; top: 20px; left: 250px;">Тип кошелька</span>
    113.                     <input type="text" name="wallet_type" class="addinput" placeholder="Пример: Киви, Яндекс" style="position: realtive; top: 50px; left: 170px;"><br>
    114.                  
    115.                     <span class="addinput-top-descr" style="position: realtive; top: 70px; left: 260px;">Номер кошелька</span>
    116.                     <input type="text" name="wallet_id" class="addinput" placeholder="Пример: +71234567890" style="position: realtive; top: 100px; left: 165px;"><br>
    117.                  
    118.                     <button id="addbutton" type="submit" class="account-button" style="position: realtive; top: 150px; left: 215px;"></button><br>
    119.                  
    120.                     <a href="/home/takes" class="mypays">Мои выплаты</a>
    121.                  
    122.                     <?php if ($err) { echo '<div class="error">'.$err.'</div>'; } ?>
    123.                     <?php if ($ok) { echo '<div class="error" style="background-color: #4ba848 !important;">'.$ok.'</div>'; } ?>
    124.                 </form>
    125.             </div>
    126. <?php include_once "pages/footer.php"; ?>
    127.         </div>
    128.     </center>
    129.     <script type="text/javascript">
    130.         function addinput() {
    131.             var val = document.getElementById('addinput').value;
    132.             if (isNaN(val)) {
    133.                 document.getElementById('addbutton').innerHTML = "Вывести 0 руб";
    134.             }
    135.          
    136.             else if (val <= 0) {
    137.                 document.getElementById('addbutton').innerHTML = "Вывести 0 руб";
    138.             }
    139.          
    140.             else if (val < 5) {
    141.                 document.getElementById('addbutton').innerHTML = "Вывести 1 руб";
    142.             }
    143.          
    144.             else if (val % 5 > 0) {
    145.                 document.getElementById('addbutton').innerHTML = "Вывести "+Math.floor(val/5+1)+" руб";
    146.             }
    147.          
    148.             else {
    149.                 document.getElementById('addbutton').innerHTML = "Вывести "+Math.floor(val/5)+" руб";
    150.             }
    151.         }
    152.         setInterval(addinput, 100);
    153.     </script>
    154. </body>
    155. </html>
     
    #1 car1ot, 21 дек 2017
    Последнее редактирование модератором: 23 дек 2017
  2. Maputo

    Maputo Активный пользователь

    С нами с:
    30 июл 2015
    Сообщения:
    1.136
    Симпатии:
    173
    Ищите то место в коде, где строка из инпута преобразуется в число.
     
  3. Boothooz

    Boothooz Активный пользователь

    С нами с:
    8 май 2016
    Сообщения:
    63
    Симпатии:
    6
    ТС, номера телефонов лучше хранить в текстовом типе, а не преобразовывать в целочисленный
     
  4. car1ot

    car1ot Новичок

    С нами с:
    26 май 2017
    Сообщения:
    21
    Симпатии:
    0
    Инпут у меня type="text", и я сразу беру POST запрос в начале кода. Как изначально преобразовать в строку?
    --- Добавлено ---
    Инпут у меня type="text", и я сразу беру POST запрос в начале кода. Как изначально преобразовать в строку?
     
  5. Boothooz

    Boothooz Активный пользователь

    С нами с:
    8 май 2016
    Сообщения:
    63
    Симпатии:
    6
    POSTом уже приходят в виде строки.
    Как уже сказали выше -
     
  6. Sail

    Sail Старожил

    С нами с:
    1 ноя 2016
    Сообщения:
    1.591
    Симпатии:
    360
    @car1ot, или javascript, преобразующий по сабмиту формы, например...
     
  7. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.748
    Симпатии:
    1.321
    Адрес:
    Лень
    PHP:
    1. <?php
    2.  
    3. var_dump ( $_POST );
    4.  
    5. require "db.php";
    что покажет вардамп ? в исходной страницы браузера

    и оформляй код нормально в след раз, за*бал
    --- Добавлено ---
    в помощи отказано.
     
  8. Sergey_Tsarev

    Sergey_Tsarev Активный пользователь

    С нами с:
    17 мар 2016
    Сообщения:
    502
    Симпатии:
    105
    Все говорят АК, а как поднять бабла?
    hqdefault.jpg
     
    TeslaFeo, _ne_scaju_ и romach нравится это.
  9. TeslaFeo

    TeslaFeo Старожил

    С нами с:
    9 мар 2016
    Сообщения:
    2.989
    Симпатии:
    759
    это же гениально
    чтобы вывести - нужно пополнить
     
    glorsh66 нравится это.
  10. car1ot

    car1ot Новичок

    С нами с:
    26 май 2017
    Сообщения:
    21
    Симпатии:
    0
    Да, а то с ежечасного бонуса наскребут и выведут
     
  11. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.748
    Симпатии:
    1.321
    Адрес:
    Лень
    #11 MouseZver, 22 дек 2017
    Последнее редактирование: 22 дек 2017
  12. Dimon2x

    Dimon2x Старожил

    С нами с:
    26 фев 2012
    Сообщения:
    2.199
    Симпатии:
    184
    Зачем показывать весь код, для небольшой задачи?
     
  13. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.904
    Симпатии:
    719
    Ну как... загреметь в бан за очередное онлайн-казино? ))