Войти

Показать полную графическую версию : Vk api - users.get (считать xml, записать в mysql + foreach)


megagogo
27-09-2014, 19:17
Здравствуйте!
Столкнулся с проблемой (раньше не занимался api вконтакте и вообще не сталкивался с xml и записью информации из xml в базы данных, а также с циклами foreach, но общее представление о программировании имею).

Хочу сделать сайт (хотя это просто 1 страница на php) чтобы проверял с периодичностью в несколько минут пользователя (онлайн он или нет) и выводил в виде таблицы по датам когда в сети был пользователь а когда его не было вконтакте (пример можно посмотреть тут: http://vkonline.info/user/89586915/)

Попробовал сделать следующее (для одного id работает вроде, может взять информацию из xml и записать в mysql, а что дальше не представляю даже).

***
подключаю базу данных mysql
дальше идет код:
<?php
$response = simplexml_load_file("https://api.vk.com/method/users.get.xml?user_id=89586915&v=5.24&fields=online");
(Запись данных из xml в переменную)


date_default_timezone_set("Europe/Minsk");
(корректирую время)

$time = date("H:i:m");
echo $time;
?>
<?php
$bonline = (integer) $response->user->online;
$bid = (integer) $response->user->id;
$btime = date("H:i:m");
$sql = mysql_query("INSERT INTO
`baza` (`id`,`online`,`time`)
VALUES
('$bid','$bonline','$btime')");
(запись информации в базу данных).

Вопрос:
1. Как переписать в базу данных не 1 информацию, а если например там будет несколько пользователей, например:
https://api.vk.com/method/users.get.xml?user_ids=89586915,22874281&v=5.24&fields=online
(при этом ведь создается уже не 1 users, а 2, а если их будет еще больше - что в таком случае делать и как информацию об id, online переписывать в базе данных?

2. Например если я начну отслеживать несколько id, то какая структура mysql вообще должна быть? Можно ли все данные сваливать в одну таблицу, где будет всего несколько полей: id, online, time?

3. Если у меня уже есть информация в базе данных (таблица из id пользователя и когда он был в сети а когда нет, то как можно вывести в структурированном виде эту информацию, как на сайте в примере выше?

4. Как вывести на странице сайта сразу несколько id из базы данных, а уже при нажатии на id (имя и фамилию) чтобы вылазила статистика.

***
Я хочу понять хотя бы суть, поэтому прошу написать хотя бы основу (как правильно прописать в цикле foreach, или вообще может нужно использовать какой-то другой цикл?)
А в этом цикле:
- как записать информацию в mysql.
- как считать информацию из mysql.
- как структурировать информацию из mysql с однотипными данными.

Прошу помочь, желательно с комментариями к коду. Мне не нужен готовый код, хотя бы кусок из того, что я написал.
Возможно что-то можно сделать проще чем я тут сам придумал? Может уже есть что-то готовое? По крайней мере я не смог через поиск ничего толкового найти и уже несколько дней ломаю голову над этим вопросом. Хочется сделать хотя бы это, самое простое…




© OSzone.net 2001-2012