HTTP (Tutorial)?
#1

В общем хочется сделать восстановление пароля у игрока на сервере через автоматическую отправку пароля на его email,но цеплять плагин (mailer) ради этого не в понт,а вот благодаря HTTP и PHP куда бы было лучше,дак вот хочу спросить как работает HTTP и прочие,на сколько я понял то делаем так:

format(sss,78,"varlando.ru/mail.php?user=%s",getPlayerName(playerid));
HTTP(playerid, HTTP_POST,sss, "", "HTTPMailPassword");

это мы отправили запрос к странице http://varlando.ru/mail.php?user=lalala (страницы такой не существует,,это просто пример)...

а тем временем скрипт в mail.php вытаскивает чему равно user из адресной строки делает запрос в БД по этому нику тем самым генерируя рандомный пароль и записывает этому игроку новый пароль и одновременно с этим отправляет его на емаил опять же указанный в БД(делали запрос по нику игрока,от туда вытащили)...

правильно ли я использую функцию HTTP...просто написать скрипт PHP который должен выполнять главное действие у меня труда не составит,а вот с HTTP я ещё не понел как работать,если не трудно можете написать туториал или что-нибудь вроде этого?
заранее спасибо)
Reply
#2

помоему нужно использовать HTTP_GET и если у тя все отправилось в пхп принтом пищи ОК и потом проверяй в паблике
Reply
#3

Code:
format(sss,78,"varlando.ru/mail.php?user=%s",getPlayerName(playerid));
HTTP(playerid, HTTP_POST,sss, "", "HTTPMailPassword");
указываешь post, а делаешь get)
Reply
#4

Winston обясни по подробнее плез.
Reply
#5

format(sss,78,"user=%s",getPlayerName(playerid));
HTTP(playerid, HTTP_POST,"varlando.ru/mail.php", sss, "MyHttpResponse");
думаю как то так
edit
или так
format(sss,78,"%s",getPlayerName(playerid));
HTTP(playerid, HTTP_POST,"varlando.ru/mail.php", sss, "MyHttpResponse");

экспериментируй)
Reply
#6

спс,буду пробывать щас...
Reply
#7

не канает(
Reply
#8

Code:
new name[MAX_PLAYER_NAME], string[44];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof(string),"nick=%s",name);
HTTP(playerid, HTTP_POST,"sa-mp.ws/old/nick.php", string,"");
работает.
http://sa-mp.ws/old/nicks.txt
ответ не забудь добавить
Reply
#9

а мне это уже не надо,ну как,я разобрался,мне лижь бы отправить запрос к странице,а она уже автоматически выполняется...
Reply
#10

Сам запрос:
pawn Code:
format(query, sizeof(query), "user=%s", GetPlayerName(playerid));
HTTP(playerid, HTTP_POST, "varlando.ru/mail.php", query, "HttpResponse");
mail.php
PHP Code:
define('SERVER_IP'127.0.0.1);
if(
$_SERVER['REMOTE_ADDR'] != SERVER_IP) die('Hacking attempt');
// здесь сам mail()
echo 'Successfully sent to '.$_POST['user']; 
Обработка ответа:
pawn Code:
public HttpResponse(index, response_code, data[])
{
    if(IsPlayerConnected(index) && index != INVALID_PLAYER_ID && response_code == 200) SendClientMessage(index, 0xFFFFFF00, data);
    else printf("Error in response data");
}

На работоспособность не проверял
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)