Получение ПРОФИЛЯ пользователя и занесение его в БАЗУ

Готовые уроки IFrame + ВКонтакте API
azzzi
Сообщения: 164
Зарегистрирован: 13 сен 2010, 19:24

Получение ПРОФИЛЯ пользователя и занесение его в БАЗУ

Сообщение azzzi »

У некоторых товарищей проблема с занесением в базу профиля, спешиал фо них :)

файл index.php:

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

<script src="jquery-1.4.2.min.js" charset="windows-1251"></script><script src="http://vkontakte.ru/js/api/xd_connection.js?2" type="text/javascript"></script> <script type="text/javascript" charset="cp1251" >window.onload = (function() {   // когда загрузится вся страница    VK.init(function() {    // инициализируем Vk API     // узнаём flashVars, переданные приложению GET запросом. Сохраняем их в переменную flashVars    var parts=document.location.search.substr(1).split("&");    var flashVars={}, curr;    for (i=0; i<parts.length; i++) {        curr = parts[i].split('=');        // записываем в массив flashVars значения. Например: flashVars['viewer_id'] = 1;        flashVars[curr[0]] = curr[1];    }        // получаем viewer_id из полученных переменных    var viewer_id = flashVars['viewer_id'];     // выполняем запрос получения профиля    VK.api("getProfiles", {uids:viewer_id,fields:"photo_big"}, function(data) { // проверяем был ли ответif(data.response) {        // отправляем полученные данные пост запросом через ajax jquery:          $.post("vbazy.php", { id: viewer_id, imya: data.response[0].first_name, famylia: data.response[0].last_name, photo: data.response[0].photo_big }, function(data) {   alert('пользователь успешно занесен в базу'); } );}    });    });    });</script>
файл vbazy.php:

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

// ну тут все понятно, получаем в посте данные и вписываем их в файл, добавляем переход на новую строчку в файле<?if(isset($_POST['id'])) { $id = $_POST['id']; $name = $_POST['imya'];$fam = $_POST['famylia'];  $pic = $_POST['photo'];     $fp=fopen("baza.txt","a+"); //Открытие дескриптора файла пользователя на запись  if ($fp) {  flock($fp,2);  fwrite($fp,"$id $name $fam $pic\n");  flock($fp,3);  fclose($fp);  }}?>   

в итоге получаем файл baza.txt где по строчкам хранится ид, фио, и фото.
ну и применяем базу для наших целей, например рассылка спама)))

п.с код писал с руки прямо тут, не проверял может есть баги в виде нехватающих скобочек...но в целом это работает так как в моей игре реализовано так :)

UPD Александр: Исправил ошибки в коде.
Аватара пользователя
Влад
Модератор
Модератор
Сообщения: 654
Зарегистрирован: 29 апр 2010, 22:24

Re: Получение ПРОФИЛЯ пользователя и занесение его в БАЗУ

Сообщение Влад »

Супер, спасибо!
PUNISHER
Сообщения: 138
Зарегистрирован: 10 ноя 2010, 21:20

Re: Получение ПРОФИЛЯ пользователя и занесение его в БАЗУ

Сообщение PUNISHER »

помогите занести имя и фамилию в мускл :(
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: Получение ПРОФИЛЯ пользователя и занесение его в БАЗУ

Сообщение Александр »

PUNISHER
Соединяйся с базой и записывай их

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

 mysql_connect("localhost", "ИМЯ_ПОЛЬЗОВАТЕЛЯ_БАЗЫ", "ПАРОЛЬ") or die (mysql_error());mysql_select_db("ИМЯ_БАЗЫ") or die (mysql_error());$query = 'INSERT INTO `users` (`fname`, `lname`) VALUES ("'.$name.'","'.$fam.'")';$sql = @mysql_query($query);
В зависимости от того как называется твоя база и поля в ней, придется изменить запрос.
azzzi
Сообщения: 164
Зарегистрирован: 13 сен 2010, 19:24

Re: Получение ПРОФИЛЯ пользователя и занесение его в БАЗУ

Сообщение azzzi »

а как mysql справляется с одновременными запросами к таблице? не падает?...
в контакте могут по 10 чел одновременно заходит в секунду...и всё это дело будет писаться в таблицы одновременно :)
PUNISHER
Сообщения: 138
Зарегистрирован: 10 ноя 2010, 21:20

Re: Получение ПРОФИЛЯ пользователя и занесение его в БАЗУ

Сообщение PUNISHER »

еще один вопрос. как добавить полученные от контакта ID просматривающего страницу и его имя в авторизационную форму например. чтобы пользователю просто оставалось нажать вход.
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: Получение ПРОФИЛЯ пользователя и занесение его в БАЗУ

Сообщение Александр »

azzzi
Справляется. Но твой сервер может не выдержать большое количество запросов.

PUNISHER
Вывести эти данные в value input`ов.
Как ты собрался делать авторизацию по uid и имени - не понятно.
PUNISHER
Сообщения: 138
Зарегистрирован: 10 ноя 2010, 21:20

Re: Получение ПРОФИЛЯ пользователя и занесение его в БАЗУ

Сообщение PUNISHER »

Александр писал(а): Вывести эти данные в value input`
Да это понятно что в валуе.....только каким кодом их вывести я не пойму :?
Александр писал(а): Как ты собрался делать авторизацию по uid и имени - не понятно.
просто. при первом заходе польщователь записывается в базу данных (если не существует такого uid) и под имеющимся в базе данных профилем будет авторизовываться.
Аватара пользователя
Влад
Модератор
Модератор
Сообщения: 654
Зарегистрирован: 29 апр 2010, 22:24

Re: Получение ПРОФИЛЯ пользователя и занесение его в БАЗУ

Сообщение Влад »

У меня даже запрос не отдаёт :cry:
Ответить