Enregistrement nickserv via irc bot

Soyez le premier à donner votre avis sur cette source.

Snippet vu 10 824 fois - Téléchargée 34 fois

Contenu du snippet

Un code tout simple pour utiliser un formulaire d'inscription, qui enregistrera le pseudo sur votre serveur IRC

(Testé sous Unreal 3.2)

Source / Exemple :


<?

$host = "irc.playersonline.org";
// Une tite visite s'impose sur le chan #PlayersOnLine venez nombreux :)
$port = 6667;

if ($nick != "" && $pass1 != "" && $pass2 != "" && $email != "") {
	if ($pass1 == $pass2) {
		if ($sock = @fsockopen($host, $port)) {
			fputs($sock, "USER php_reg localhost localhost :register\r\n");
			fputs($sock, "NICK $nick\r\n");
		
			while ($line = fgets($sock,1024)) {
				$a = explode(" ", $line);
				if ($a[0] == "PING") {
					fputs($sock, "PONG $a[1]"); 
				}
				if ($a[1] == "MODE") {
					fputs($sock, "PRIVMSG nickserv :register $pass1 $email\r\n");
					fputs($sock, "QUIT\r\n");
				}
				if ($a[1] == 433) {
					echo "Ce pseudo est déjà présent sur le chat";
					fputs($sock, "QUIT\r\n");
					exit;
				}
				if ($a[0] == ":Nickserv@Services.IRCFrance.Org") {
					$b = explode(" :", $line);
					$c = explode(".", $b[1]);
					echo "$c[0]<br>";
					exit(1);
				}
			}
		}
		else {	
			echo "Erreur lors de la connexion à $host:$port<br>";
		}
	}
	else {
		echo "Les mots de passe doivent être identiques<br>";
	}
}
else {
	echo "Veuillez remplir le formulaire dans son intégralité<br>";
}

?>

A voir également

Ajouter un commentaire

Commentaires

lyosse
Messages postés
4
Date d'inscription
mardi 8 avril 2008
Statut
Membre
Dernière intervention
24 juin 2009
-
Salut à tous,

je suis pas un pro en php loin de la; et en lisant le code je vois pas exactement le formulaire pour mettre les nick pass et email;
j'ai essayé de faire un formulaire qui envois des données vers le script php pour $nick $pass1 $pass2 $email mais ça donne rien, aucun message d'erreur rien du tout. C'est un vieux topique mais une aide serait la bienvenue, si quelqu'un pouvait donner un exemple de formulaire qui marcherait avec ce script. merci d'avance.
cs_leserveur
Messages postés
1
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
3 juillet 2008
-
bonjour j espere que tu va me repondre car cest asser urgent j ai un gros probleme avec le code je t explique

voila quand j encode ta source il me marque j ai une erreur au niveau de la ligne 7

voici ce qu il me donne comme herreur

Notice: Undefined variable: nick in c:\program files\easyphp 1.8\www\untitled-2.php on line 7

j espere que tu pourra me donner une solution merci d avance
poloroyal
Messages postés
2
Date d'inscription
mardi 21 février 2006
Statut
Membre
Dernière intervention
21 février 2006
-
ben voila moi je suis completement debutant je voudrai instaler une iscription avant de voyager sur mon sit donc si il s inscri pas il peuve pas aller voire les foto et aller sur le tchate


merci d avance pour tt aide
McPeter
Messages postés
136
Date d'inscription
mercredi 22 janvier 2003
Statut
Membre
Dernière intervention
18 avril 2013
-
Petit détails aussi (aui a son importance)
beaucoup de Unreal ont leur conf de base avec : NSRegDelay 30s

Soit l'enregistrement possible qu'au bout de 30s de connection
donc tu peux aussi implémenter un timer de 30s avant l'envoit de la commande register
Genre à insérer entre la ligne 18 et 19:
$tmp_time = time();
$i = $tmp_time;
$time = $tmp_time + 30;
while($i < $time){ if(time()!= $i){$i++;} }


c'est bourrin mais bon :p
motherboy
Messages postés
45
Date d'inscription
mercredi 3 avril 2002
Statut
Membre
Dernière intervention
9 avril 2007
-
Corrigé mici

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.