Файл пополнения PHP: session_start(); include '../config/config.php'; if (! isset ($_SESSION['user'])) { header("Location: index2.php"); exit; } $identity = $_SESSION['user']['identity'] ; //Проверяем одинаковых пользователей $result = $mysqli->Query("SELECT * FROM user WHERE identity = '$identity'"); $data = mysqli_fetch_array($result); $id = $data ['id']; echo $id; ?> <form method="POST" action="https://merchant.webmoney.ru/lmi/payment.asp" accept-charset="windows-1251"> <input type="text" name="LMI_PAYMENT_AMOUNT" placeholder="Сумма"> <input type="hidden" name="LMI_PAYMENT_DESC" value="платеж по счету"> <input type="hidden" name="LMI_PAYMENT_NO" value="1234"> <input type="hidden" name="LMI_PAYEE_PURSE" value="НОМЕР КОШЕЛЬКА> <input type="hidden" name="id" value="'.$id.'"> <input type="submit" > </form> Файл обработчик PHP: $key = hash('sha256', $_POST['LMI_PAYEE_PURSE']. $_POST['LMI_PAYMENT_AMOUNT']. $_POST['LMI_PAYMENT_NO']. $_POST['LMI_MODE']. $_POST['LMI_SYS_INVS_NO']. $_POST['LMI_SYS_TRANS_NO']. $_POST['LMI_SYS_TRANS_DATE']. 'КЛЮЧ'. $_POST['LMI_PAYER_PURSE']. $_POST['LMI_PAYER_WM']); if ( strtoupper($key) != $_POST['LMI_HASH']) exit('ошибка'); $id = (int)$_POST['id']; $mysqli->Query("UPDATE user SET money = money + '$_POST['LMI_PAYER_AMOUNT']' WHERE id = '$id'"); Проблема в том, что не записывается пополнение в базу данных. в чем может быть проблема?
первая --- Добавлено --- За пределам тега <?php понимаешь же да что ты отдаешь в этом поле? --- Добавлено --- 2. ты форму самбитишь на сайт вебмани, с какого хера ты ждешь что то от обработчика на своем сайте то? --- Добавлено --- 3 бесит блин...люди вообще не хотят думать, то ли лень, то ли от отсутствия мозгов, даже не знаю, но второе хуже (((
Тема создана в разделе "для новичков" так что не ругайся)) Я прошу помощи, ткни конкретно носом, что и на что поменять. я запомню и больше не будет таких вопросов)
можно конкретней, пожалуйста, что и где не так. раз спрашиваю, значит не понимаю) отправляет id пользователя, что тут не так?
ну ты же в браузере открываешь эту свою страничку с формой? Вот открываешь консоль браузера и смотришь что и тебя в этом инпуте <input type="hidden" name="id" value="'.$id.'">
Игорь, ну о чем ты ((( человек "НОМЕР КОШЕЛЬКА" строкой к деньгам прибавляет (((( ты ему ту про инъекции )))
когда он будет прибавлять правильно где надо и у него заработает - он обрадуется и убежит. И уже будет поздно говорить об инъекциях
@Паша92 всё понятно? PHP: <?php session_start(); include '../config/config.php'; if (!empty($_SESSION['user']['identity'])) { // Есть ли identity в сессии и он не пустой $result = $mysqli->Query("SELECT * FROM user WHERE identity = '".mysqli_real_escape_string($identity)."' LIMIT 1"); // Получаем запись, только 1 строку if (mysqli_num_rows($result) == 1) { // Проверяем если в базе что-то нашлось $data = mysqli_fetch_assoc($result); // Получаем одну строку ?> <form method="POST" action="https://merchant.webmoney.ru/lmi/payment.asp" accept-charset="windows-1251"> <input type="text" name="LMI_PAYMENT_AMOUNT" placeholder="Сумма"> <input type="hidden" name="LMI_PAYMENT_DESC" value="платеж по счету"> <input type="hidden" name="LMI_PAYMENT_NO" value="1234"> <input type="hidden" name="LMI_PAYEE_PURSE" value="НОМЕР КОШЕЛЬКА"> <input type="hidden" name="id" value="<?=htmlspecialchars($data['id'])?>"> <!-- https://secure.php.net/manual/ru/function.echo.php I have ... foo. --> <input type="submit" > </form> <?php } else { ?> identity не найден <?php } } else { header("Location: index2.php"); exit; }