Guten Abend
Heute zeige ich euch mal wie man Emails vom Script aus senden kann
Der nette Slice hat dafür mal ein gutes Include geschrieben,
was ich selber auch nutze. Hier findet ihr den Thread
Was ihr benötigt
* Grundkenntnisse in PAWN
* 5 min. um es zu verstehen
* Benötigten Includes und PHP Script
Wie funktioniert das denn jetzt?
SendMail("Email des Empfängers","Eure Email","Euer Name","Titel","Naricht");
Mehr braucht ihr nicht, leicht oder ?
Beispiel
Ich habe für euch jetzt mal ein Beispiel geschrieben.
Es ist eine Verifikations "System".
Es werden keine Daten gespeichert, lediglich abgefragt und gesetzt
Erklärung
Man gibt /verifizieren ein dann kommt ein Dialog wo man seine Email eingeben
muss, hat man das getan, erhält man eine Email, dann kommt man zur Verifikationskey
Eingabe, hat man den Verifikationskey eingegeben, ist man temporär verifziert, da ja nichts gespeichert wird
//Includes
#include <a_samp>
#include <zcmd>
#define MAILER_URL "www.DieUrlWoDasPhpScriptIst.de"
#include <mailer>
//Dialog ID's
enum
{
dialog1,
dialog2
}
//Spieler Variablen
enum pDaten
{
pName[MAX_PLAYER_NAME+1],
pVerifikationskey[35],
pEmail[35],
bool:pVerifiziert
}
new
PlayerInfo[MAX_PLAYERS][pDaten];
//Callback: OnPlayerConnect
public OnPlayerConnect(playerid)
{
//Wir speichern den Namen des Spielers
GetPlayerName(playerid,PlayerInfo[playerid][pName],MAX_PLAYER_NAME);
return true;
}
//Befehl: Verifizieren
CMD:verifizieren(playerid,params[])
{
//Wenn er schon verifiziert ist
if(PlayerInfo[playerid][pVerifiziert])return SendClientMessage(playerid,-1,"Du bist bereits verifiziert");
//Wenn er eine Email eingegeben hat
if(strlen(PlayerInfo[playerid][pEmail])>5)return ShowPlayerDialog(playerid,dialog2,DIALOG_STYLE_INPUT,"Verifikation","Bitte gebe hier den Verifikationskey ein, den du per Email erhalten hast!","Weiter","Abbrechen");
//Wenn er noch nicht verifiziert ist, oder noch keine Email eingegeben hat
ShowPlayerDialog(playerid,dialog1,DIALOG_STYLE_INPUT,"Verifikation","Bitte gebe hier deine Email Adresse ein","Weiter","Abbrechen");
return true;
}
//Callback: OnDialogResponse
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch(dialogid)
{
case dialog1:
{
//Wenn er nichts eingegeben hat
if(!strlen(inputtext))return ShowPlayerDialog(playerid,dialog1,DIALOG_STYLE_INPUT,"Verifikation","Bitte gebe hier deine Email Adresse ein","Weiter","Abbrechen");
//Wir speichern die Emailadresse des Spielers
format(PlayerInfo[playerid][pEmail],35,"%s",inputtext);
//Wir generieren den Verifikationskey aus einer Zahl zwichen 1000 und 9999
new string[500],
key = 1000 + random(9999);
PlayerInfo[playerid][pVerifikationskey]=key;
//Wir formatieren eine Naricht und senden die Email
format(string,sizeof(string),"Hallo %s!\nDu möchtest dich auf unserem Server verifizieren!\nGebe dazu InGame einfach folgenden Verifikationskey ein\nKey: %d\nViel Spass noch!",PlayerInfo[playerid][pName],PlayerInfo[playerid][pVerifikationskey]);
SendMail(PlayerInfo[playerid][pEmail],"EureEmail@anbieter.de", "Administration", "Verifikation",string);
//Er kommt zur Verifikationskey Eingabe
ShowPlayerDialog(playerid,dialog2,DIALOG_STYLE_INPUT,"Verifikation","Bitte gebe hier den Verifikationskey ein, den du per Email erhalten hast!","Weiter","Abbrechen");
}
case dialog2:
{
//Wenn er nichts eingegeben hat
if(!strlen(inputtext))return ShowPlayerDialog(playerid,dialog2,DIALOG_STYLE_INPUT,"Verifikation","Bitte gebe hier den Verifikationskey ein, den du per Email erhalten hast!","Weiter","Abbrechen");
//Wenn der eingegebene Code richtig war
if(strval(inputtext)==PlayerInfo[playerid][pVerifikationskey])
{
PlayerInfo[playerid][pVerifiziert]=true;
SendClientMessage(playerid,-1,"Du hast dich erfolgreich verifiziert!");
}
}
}
return true;
}
Download
Das PHP-Skript
Das Include
Das Beispiel
Schlusswort
Ich hoffe ich konnte dem ein oder anderen helfen,
um Feedback, Verbesserungsvorschläge und Bewertungen
würde ich mich freuen, solltet Ihr Fragen und/oder Probleme
haben, meldet euch hier im Thread.