Задать вопрос
@nsmilyk

Как сделать покупку на PHP?

Всем привет! Занимаюсь одним проектом соль вот в чем: Человек пополняет счет на сайте через яндекс деньги и этот факт должен записаться в Таблицу, вот собственно код:
$hash = sha1($_POST['notification_type'].'&'.
$_POST['operation_id'].'&'.
$_POST['amount'].'&'.
$_POST['currency'].'&'.
$_POST['datetime'].'&'.
$_POST['sender'].'&'.
$_POST['codepro'].'&'.
'Секретный ключ'.'&'.
$_POST['label']);





if ( $_POST['sha1_hash'] != $hash or $_POST['codepro'] === true or $_POST['unaccepted'] === true ) exit('error');



mysql_connect('localhost', 'Логин', 'Пароь', 'БД') or die ("Невозможно подключение к MySQL");
mysql_select_db("billing") or die ("Невозможно открыть таблицу с данными");

$billing_id = addslashes( trim($_POST['operation_id']) );
$amount   = addslashes( trim($_POST['amount']) );
$user_id  = addslashes( trim($_COOKIE['user_id']) );

$result = mysql_query ("INSERT INTO dannye VALUES ('".$billing_id."', '".$amount."', '".$user_id."')");

if ($result) 
  echo "Добавлено в базу данных.";

mysql_close ($connect);

Словами я заменил свои данные, они верные если что.
Копаюсь уже неизвестно сколько времени, да только факт тот что оплата проходит, а таблица пустая. Уже много вариантов перепробовал, не вижу ошибку, помогите!
И да, таблица состоит из 3х полей billing_id, amount, user_id. Все INT по 12 символов, больше ничего не ставил.
  • Вопрос задан
  • 346 просмотров
Подписаться 2 Простой 5 комментариев
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
user_id из куки? Серьезно? Жееесть...

$billing_id = addslashes( trim($_POST['operation_id']) );
$amount   = addslashes( trim($_POST['amount']) );
$user_id  = addslashes( trim($_COOKIE['user_id']) );
var_dump($billing_id);
var_dump($amount);
var_dump($user_id);

$sql = "INSERT INTO `dannye` (`billing_id`, `amount`, `user_id`) VALUES ($billing_id, $amount, $user_id)";
var_dump($sql);
$result = mysql_query ($sql);

Дальше смотреть что вывелось, много думать, если визуально все вышло норм - попробовать запустить получившийся sql "руками" из консоли или phpmyadmin.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽