За последние 24 часа нас посетили 16608 программистов и 1681 робот. Сейчас ищут 877 программистов ...

обработка POST запроса, на локалке и хостинге

Тема в разделе "PHP и базы данных", создана пользователем straik16, 11 янв 2016.

  1. straik16

    straik16 Новичок

    С нами с:
    11 янв 2016
    Сообщения:
    5
    Симпатии:
    0
    Есть скрипт:
    Код (PHP):
    1. //НАЧАЛО МОДУЛЯ
    2. $setp['PurseQiwi'] = "34535353";     // Номер киви
    3. $setp['PassQiwi'] = "53453534"; // Пароль от киви
    4. $kurs = "60"; //КУРС ПО КОТОРОМУ ЗАНОСИМ В БАЗУ 
    5. if(isset($_POST['qiwia'])) {
    6.         $code = intval($_POST['qiwia']);
    7.         if(!empty($code)) {
    8.             $purse = 'Transaction: '.$code;
    9.             $ss = mysql_query("SELECT * FROM enter WHERE `purse` = '$purse'") or die(mysql_error());
    10.             if(mysql_num_rows($ss) == 0) {
    11.                     include($_SERVER['DOCUMENT_ROOT'].'/lib/qiwi.class.php');
    12.                     $qiwi = new QIWI($setp['PurseQiwi'], $setp['PassQiwi'], $_SERVER['DOCUMENT_ROOT'].'/lib/coockie.txt');
    13.                     $lastDate = date( 'd.m.Y', strtotime( '-1 day' ));
    14.                     $nextDate = date( 'd.m.Y', strtotime( '+1 day' ));
    15.                     $trans = $qiwi->GetHistory($lastDate, $nextDate);
    16.                     //var_dump($trans);
    17.                     foreach($trans as $value) {
    18.                         if($value['iID'] == $code && $value["sType"] == "INCOME" && $value["sStatus"] == "SUCCESS" && $value["sCurrency"] == 'RUB') {
    19.                             $summ = $value['dAmount'];                  
    20.                         }
    21.                     }
    22.                     if($summ >= 1 and !empty($summ)){
    23.                         mysql_query("UPDATE users SET pm_balance = pm_balance + '$summ'/'$kurs' WHERE id = '$user_id'") or die(mysql_error());
    24.                         mysql_query("INSERT INTO 
    25.                                     enter (login, sum, date, purse, 
    26.                                     paysys, status) VALUES ('$login', '$summ'/'$kurs', '".time()."', '$purse', 'Qiwi', '2')") or die(mysql_error());
    27.                          echo 'На Ваш счет зачислена сумма в размере '.$summ.' RUB';
    28.                     }else echo '<font color="red">Не верная сумма или платежа не существует!</font>';
    29.             }else echo '<font color="red">Данный код транзакции уже был использован</font>';
    30.         }else echo '<font color="red">Введите код транзакции!</font>';
    31.     }
    32.     //КОНЕЦ МОДУЛЯ 
    есть обработчик (qiwi.class.php)
    Все работает без ошибок и нареканий! Но... работает это все только на хостинге(внешнем), а на лакалке не работает, почему?!
    Пробовал на денвере , OS and XAMPP , скрипт при обработке выдает только одно:
    Код (PHP):
    1.  }else echo '<font color="red">Не верная сумма или платежа не существует!</font>'; 
    а на хосте пашет как надо.

    пользуйся [code=php], так намного лучше читается
         — модераторъ
     
  2. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.131
    Симпатии:
    1.251
    Адрес:
    там-сям
    потому.

    ошибка какая?

    Добавлено спустя 1 минуту 20 секунд:
    вот прям так и выдает — текст с "else echo" ?

    Добавлено спустя 4 минуты 6 секунд:
    вероятно срабатывает соответствующее условие. проверяй значения переменных, которые в условии участвуют, т.е. ОТЛАЖИВАЙСЯ
    http://phpfaq.ru/debug
     
  3. straik16

    straik16 Новичок

    С нами с:
    11 янв 2016
    Сообщения:
    5
    Симпатии:
    0
    ошибок в исполнении скрипта нет.
    немного неправильно написал, когда я пытаюсь проверить работоспособность скрипта, т.е пытаюсь ввести транзакцию на проверку, появляется ошибка из else echo.
    Хотя, проверяю тот же скрипт на хостинге, все нормально работает.
     
  4. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    straik16 отладку всей программы по инструкции выше сделал?
     
  5. straik16

    straik16 Новичок

    С нами с:
    11 янв 2016
    Сообщения:
    5
    Симпатии:
    0
    да, сделал.

    Добавлено спустя 25 минут 9 секунд:
    вот что выдает дамп.
    Код (PHP):
    1. array(2) { ["qiwia"]=> string(10) "6909223602" ["submit"]=> string(18) " Пополнить баланс " }  
     
  6. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.131
    Симпатии:
    1.251
    Адрес:
    там-сям
    ты сам код писал? видимо нет, скопировал так же с форумов.

    если появляется тот текст, о котором ты писал, значит вот это условие очевидно не выполняется:
    Код (PHP):
    1. if($summ >= 1 and !empty($summ)){
    ставь отладочный вывод непосредственно над этой строкой: смотри что там в $summ.
    потом смотри выше как он вычисляется. проверяй почему именно так — проверяй еще какие-нибудь переменные, см. в базу и т.д.

    причина может быть в том, что на другом хосте у тебя другие записи в базе или, блин, у тебя вообще не работает доступ к базе или, ёмана, невозможно сетевое обращение наружу и т.д.

    мы за тебя не отладим, даже если захотим! ты должен сам себе помочь. работай головой и руками.
     
  7. straik16

    straik16 Новичок

    С нами с:
    11 янв 2016
    Сообщения:
    5
    Симпатии:
    0
    этот модуль я писал сам, по аналогии другого.
    если смотреть в сам модуль, то мы видем что $summ = $value['dAmount'] , то есть сумме которая пришла на QIWI.
    Что касается записи в базе, то они везде одинаковые.
    А вот насчет
    тут вот интересно, можно подробней?

    Добавлено спустя 2 минуты 1 секунду:
    Я вот грешу на настройки php.ini, так как они отличаются от локального php.ini
    Но если включить мозг, то они и должны отличаться, так как там настройки на мир.
     
  8. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    скачай файл с другого сайта из php
     
  9. straik16

    straik16 Новичок

    С нами с:
    11 янв 2016
    Сообщения:
    5
    Симпатии:
    0
    проделывал такую операцию.Вообще даже не знаю что делать.