mysql

Обсуждение и помощь по вопросам взаимодействия с ВКонтакте API в Flash-приложениях (ActionScript)
Ответить
Fedya
Сообщения: 174
Зарегистрирован: 21 июл 2012, 19:56

mysql

Сообщение Fedya »

Alazaur писал(а):Создаете в базе таблицу этим SQL запросом:

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

CREATE TABLE users (userid INT(11) NOT NULL AUTO_INCREMENT,PRIMARY KEY (userid));
На сервер скрипт со следующим содержимым (кодировка файла должна быть UTF-8 без BOM):

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

<?phpheader("Content-Type: text/html; charset=utf-8");$dbhost = "localhost"; //Хост БД$dbname = "xxxxxxx"; //Имя БД$dbuser = "xxxxxxx"; //Пользователь БД$dbpass = "xxxxxxx";//Пароль к БД$app_id = 1111111;//ID приложения$api_secret = "xxxxxxxxxxxxxxxxxxxxxx"; //Секретный ключ приложения  $viewer_id = (int)$_POST['userid'];//Пользователь который сделал запрос к скрипту (менять не надо)$authKey= md5($app_id."_".$viewer_id."_".$api_secret);//Auth key (менять не надо)   mysql_connect($dbhost, $dbuser, $dbpass);mysql_select_db($dbname);mysql_set_charset('utf8');if(mysql_result(mysql_query("SELECT COUNT(*) FROM users WHERE userid = ".$viewer_id),0)) exit("Пользователь уже зарегистрирован");else {    if(mysql_query("INSERT INTO users SET userid = ".$viewer_id)) exit("Пользователь успешно зарегистрирован");    else exit("При регистрации возникла ошибка");}?>
Ну и во flash

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

package {    import flash.events.Event;    import flash.net.*;    import flash.display.*;     public class Main extends Sprite     {        public function Main():void         {            var flashVars:Object = stage.loaderInfo.parameters as Object;            var loader:URLLoader = new URLLoader();            var request:URLRequest = new URLRequest("http://ваш-сайт.ру/скрипт.php");            request.method = URLRequestMethod.POST;            var vars:URLVariables = new URLVariables();            vars['userid'] = flashVars['viewer_id'];            request.data = vars;            loader.addEventListener(Event.COMPLETE, loaded);            loader.load(request);        }                private function loaded(e:Event):void         {            trace(e.target.data);        }    }}
Вот в этой теме где у вас не получилось http://flapps.ru/forum/topic165.html в принципе все тоже самое. За исключением что там уже протестировано и работает, а здесь я на коленке по-быстрому написал и есс-но не тестировал)))
Сделал приложение
Сделал php файл
все настроил, но при заходе на http://fedorefimenko.ru/vk.php в базу добавляется пользователь с id = 0
Как так?
http://vk.com/app3044868

*я первый раз с флешом работал, может там что-то не так сделал,
делал на подобии этого http://flapps.ru/forum/topic3.html
вроде должно работать..
Alazaur
Разработчик
Разработчик
Сообщения: 1001
Зарегистрирован: 16 окт 2011, 20:25

Re: mysql

Сообщение Alazaur »

Fedya, ну а вы чего ждали? ;) Должен же прийти POST запрос к скрипту из флеша или еще откуда-нибудь, содержащий ID чтоб он его добавил. А раз ID не пришло, значит он добавляет пустое то есть 0. А проверок никаких и защиты в скрипте нет, поэтому я и писал "использовать исключительно в ознакомительных целях".
Fedya
Сообщения: 174
Зарегистрирован: 21 июл 2012, 19:56

Re: mysql

Сообщение Fedya »

Мы на разных языках разгавариваем наверное :D

Можно как-нибудь по подробнее на счет этих запросов, пример запроса что ли..
А то и в той теме меня заступарило слово GET запрос и в этой)
Fedya
Сообщения: 174
Зарегистрирован: 21 июл 2012, 19:56

Re: mysql

Сообщение Fedya »

Вот, что конкретно мне надо
http://park0ur.ru/
а вот, что у меня
http://fedorefimenko.ru/

у меня без подтверждения вообще никуда, а у паркур он как-то сам id берет
Alazaur
Разработчик
Разработчик
Сообщения: 1001
Зарегистрирован: 16 окт 2011, 20:25

Re: mysql

Сообщение Alazaur »

в настройках приложения отключите требование на установку)
UPD: А у вас там приложение для сайта. Это не ко мне)))
Ответить