Скрипт вечного онлайна для контакта
-
Для чего это нужно, и т.д объяснять конечно же можно долго, отвечу простым и понятным языком: Для увеличения продаж.
Ну и собственно давайте приступим к написанию самого простого вконлайна, эти скрипты в сети я не нашёл, так как я делал конкретно: один скрипт на 100 акков и более. В сети я видел только на один
Итак, начнём делать наш собственный псевдо-сервис по вечному онлайну вконтакте!
Первым делом скажу что я делал скрипт который взаимодействует БД mysql, но для данного примера рациональнее было бы юзать текстовый файл, просто отработка скрипта по времени и нагрузка на сервер будет гораздо меньше, так как мы юзаем только получения всех токенов и добавления токена в нашу базу. Это очень просто реализовать в текстовом варианте, но мы не будем искать лёгких путей, так как если вы захотите модернизировать данные скрипты то текстовые файлы уже будут чистой воды 'идиотизмом'.ШАГ №1
Для начала создадим PHP файл с информацией о подключении к базе данных. Это нужно для того чтобы при смене пароля или логина не менять в каждом файле логи. Всё культурно в одном файле.Данный файл я обозвал db.inc.php , inc - не пугайтесь, данное название говорит нам о том что скрипт будет вложен в другой скрипт(делаю для удобства).
В данном файле я прописываю логи для подключения к БД:
<?php
define('DB_HOST', 'localhost');
define('DB_LOGIN', 'root');
define('DB_PASSWORD', 'password');
define('DB_NAME', 'DataBaseName');
?>
При объявлении переменных я использую константы, они нужны для того чтобы если вы забыли о какой либо переменной и объявили её, PHP интерпретатор выдал вам ошибку, константы изменять тоже не как нельзя!
Мораль: Все завербованные переменные нужно объявлять в константу!Думаю что в пояснении этого PHP скрипта нечего не требуется, перейдём ко второму шагу.
ШАГ №2
Создадим базу данных, для этого мы можем написать PHP скрипт, я же незаморачивался и создал её в PHPMyAdmin со следующеми значениями:
ШАГ №3
Создадим скрипт добавления токена в БД. Данный скрипт я назвал addtoken.php
Для этого будем передавать при GET запросе параметр token, реализовываем:
<?php
if(isset($_GET['token']) && !empty($_GET['token']){
require 'db.inc.php';
//Подключение к бд
$conn_db = mysqli_connect(DB_HOST, DB_LOGIN, DB_PASSWORD, DB_NAME) or die(mysqli_error());
//Добавляем токен
$sql = 'INSERT INTO tokens(token) VALUES ("' . $_GET['token'] . '")';
$result = mysqli_query($conn_db, $sql) or die(mysqli_error());
mysqli_close($conn_db);
echo 'Success added token';
}
?>
Разберу всё по строчно, сначала мы проверяем через if, пришёл ли к нам параметр токен из GET запроса, проверка происходит сразу аж двумя функциями - isset и empty.
1ая функция проверяет, пришла ли к нам переменная вообще, 2ая функция проверяет, пустая ли переменная, но у нас стоит ! перед началом функции, это означает что результат функции переворачивается, или отрицается, то есть empty = пустая, !empty = не пустая.Дальше идёт подключения той самой библиотеки о который шла речь выше. Советую использовать именно require, а не include, быстрее работает в плане выполнения скрипта.
Дальше идёт коннект к бд mysql
$conn_db = mysqli_connect(DB_HOST, DB_LOGIN, DB_PASSWORD, DB_NAME) or die(mysqli_error());
Результатом в переменной $conn_db будет либо ресурс, либо ошибка при подключении БД.Дальше формируем запрос на вставку токена
$sql = 'INSERT INTO tokens(token) VALUES ("' . $_GET['token'] . '")';
Подробнее о запросе велком в google.comТеперь давайте выполним сам запрос, который мы сформировали к бд mysql
$result = mysqli_query($conn_db, $sql) or die(mysqli_error());
Если в результате запроса будет ошибка то мы её выведем и скрипт завершит себя, благодаря DIE().Затем закрываем соединение, и выводим сообщение о том что токен успешно добавлен в БД.
ШАГ №4
Самый важный шаг. Создание коннектера, выдавать сам статус мы будем через апи функцию account.setOnline
Представим что наш токен = exe-team_tokenТогда наш запрос будет выглядеть следующим образом
https://api.vk.com/method/account.setOn … team_token
Ну вот вроде бы и всё, о теории, переходим к практике, напишем скрипт, который будет получать все токены, и каждым проходится по следующей ссылки с подстановкой токена из базы. Я реализовал саму отправку пакета GET через file_get_contents , но можно было бы и заюзать curl ,Реализация, данный скрипт я обозвал getonline.php:
<?php
require 'db.lic.php';
//Подключение к бд
$conn_db = mysqli_connect(DB_HOST, DB_LOGIN, DB_PASSWORD, DB_NAME) or die(mysqli_error());
//Выбираем все токены
$sql = 'SELECT token FROM tokens';
$result = mysqli_query($conn_db, $sql) or die(mysqli_error());
mysqli_close($conn_db);
while($arr = mysqli_fetch_assoc($result)){
file_get_contents('https://api.vk.com/method/account.setOnline?access_token=' . $arr['token']);
}
?>
Ну и тут добавить собственно говоря нечего, скрипт подобен тому что обозревался выше для добавления, за исключением SQL запроса :bx: , да, видимо по мимо php придётся ещё учить 100500 языков :d:e: .
В данном случае! Важное замечание, закрывать соединение с базой нужно обязательно тогда когда мы не будем больше к ней обращатся! Иначе будет нагрузка , сервер по мимо отправки GET пакетов будет ещё и держать связь с БД что не есть хорошо :cc: . Именно поэтому я сначала закрываю соединение затем начинаю выборку.
mysqli_close($conn_db);
while($arr = mysqli_fetch_assoc($result)){
file_get_contents('https://api.vk.com/method/account.setOnline?access_token=' . $arr['token']);
}
mysqli_fetch_assoc - получение ассоциативного массива, из массива извлекаем ячейку token, в ней то наша печенька и лежитШАГ №5
Вешаем наш скрипт getonline.php на cron, об этом я напишу позже в продолжении статьи.
. На этом всё, таким простым образом мы создаём самый самый простой сервис по вечному онлайну вконтакте.
-
ни ча не понял
-
с***ил все с другого форума, инфа сотка
-
зачем все усложнять? есть и проще способы
-
а можно как нибудь сделать что бы сидеть вк через ПК и быть offline****
-
инкогнито в хром не пробовал?или раньше через аську можно было