Страница 1 из 3

Один и тот же код

Добавлено: 04 окт 2012, 21:02
Casperovskii
Один и тот же код в разных файлах. В первом работает, во втором нет. Почему так может происходить? Подключение к БД и прочий код абсолютно идентичны:

Код: Выделить всё

//запрашиваем количество энергии и дату последнего пополнения        $q = mysql_query('SELECT `freeEnergy` FROM `'.$table_name.'` WHERE `uid` = '.$viewer_id.';');        $freeEnergy = mysql_result($q,freeEnergy);        $q = mysql_query('SELECT `paidEnergy` FROM `'.$table_name.'` WHERE `uid` = '.$viewer_id.';');        $paidEnergy = mysql_result($q,paidEnergy);        $q = mysql_query('SELECT `lastEnergyUpdate` FROM `'.$table_name.'` WHERE `uid` = '.$viewer_id.';');        $lastEnergyUpdate = mysql_result($q,lastEnergyUpdate);
Я уже и у Гугля спрашивал. Но ничего не помогло. Ошибку выдает на строках присвоения значений. Т.е., я так понимаю, он не может взять данные из БД? (Ошибка вида: аргумент не является результатом МУСКЛ-запроса)

Re: Один и тот же код

Добавлено: 04 окт 2012, 21:50
bodnar
делаете обоих файлах

Код: Выделить всё

echo 'SELECT `freeEnergy` FROM `'.$table_name.'` WHERE `uid` = '.$viewer_id.';';echo 'SELECT `paidEnergy` FROM `'.$table_name.'` WHERE `uid` = '.$viewer_id.';';echo 'SELECT `lastEnergyUpdate` FROM `'.$table_name.'` WHERE `uid` = '.$viewer_id.';';
и смотрите чем отличается, что-то будет косо

Re: Один и тот же код

Добавлено: 04 окт 2012, 23:19
Casperovskii
Нашел в чем ошибка: php-скрипт не присваивает значения, взятым из метода POST, переменным.
С чем может быть связано? Переменные отсылаются корректно, проверено.

Re: Один и тот же код

Добавлено: 05 окт 2012, 12:18
Serge
Casperovskii писал(а):Нашел в чем ошибка: php-скрипт не присваивает значения, взятым из метода POST, переменным.
С чем может быть связано? Переменные отсылаются корректно, проверено.
Код скрипта показали бы что ли

Re: Один и тот же код

Добавлено: 05 окт 2012, 21:41
Casperovskii
Код скрипта:

Код: Выделить всё

 $auth_key  = $_POST['auth_key'];    $viewer_id = $_POST['viewer_id'];    $isSlower = $_POST['slower'];         $real_key = md5($app_id."_".$viewer_id."_".$api_secret);        mysql_connect($db_host, $db_user, $db_password) or die (mysql_error());        mysql_select_db($db_name) or die (mysql_error());        mysql_query("SET NAMES 'utf8'");        echo $viewer_id.';'.$isSlower.';';
возвращает строку ';;'.
Код на флеш:

Код: Выделить всё

startGame_loader = new URLLoader();            startGame_request = new URLRequest("http://vk.digmaserp.ru/ForVK/startGame.php");            startGame_request.method=URLRequestMethod.POST;            startGame_vars = new URLVariables();            startGame_loader.addEventListener(Event.COMPLETE, gameStartAnswerListener);            startGame_vars['auth_key']= auth_key;// auth_key из FlashVars            startGame_vars['viewer_id']= viewer_id;// ID просматривающего приложение            if (slowerCheckBox.selected) { startGame_vars['slower']= 1; } else {startGame_vars['slower']= 0;}            startGame_loader.load(startGame_request); 

Re: Один и тот же код

Добавлено: 05 окт 2012, 22:56
sanych_dv
Вы переменные не прицепили в реквест:

Код: Выделить всё

 startGame_request.data = startGame_vars; 

Re: Один и тот же код

Добавлено: 08 окт 2012, 07:38
Casperovskii
После этого возникла другая проблема: при тестировании с локальной машины все работает на ура, а при запуске приложения из контакта - ни один запрос не доходит до сервера (вообще никакой, даже тот, что пользователь запустил приложение). С чем это может быть связано? Код всех запросов - как у startGame_***.
Переменные те же самые, кроме slower.
В теле конструктора главного класса выполняется два запроса (на локальной машине сервер отвечает и все ок), может ли быть причина в этом?

Добавлено: crossdomain.xml на сервере есть.

Re: Один и тот же код

Добавлено: 08 окт 2012, 18:36
Александр
Casperovskii
Содержимое crossdomain.xml ?

Re: Один и тот же код

Добавлено: 08 окт 2012, 21:47
Casperovskii

Код: Выделить всё

<cross-domain-policy><allow-access-from domain="*.vkontakte.ru" /><allow-access-from domain="*.vk.com" /></cross-domain-policy>

Re: Один и тот же код

Добавлено: 09 окт 2012, 18:52
Александр
Casperovskii
А если

Код: Выделить всё

<cross-domain-policy><allow-access-from domain="*.vkontakte.ru"/><allow-access-from domain="*.vk.com"/><allow-access-from domain="*.userapi.com"/></cross-domain-policy>