Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

ENREGISTREMENT NICKSERV VIA IRC BOT


Information sur la source

Catégorie :Application Classé sous : irc, nickserv, bot, socket Niveau : Initié Date de création : 30/09/2004 Date de mise à jour : 25/11/2005 21:58:14 Vu : 5 759

Note :
7,88 / 10 - par 8 personnes
7,88 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (17)
Ajouter un commentaire et/ou une note

Description

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

(Testé sous Unreal 3.2)
 

Source

  • <?
  • $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>";
  • }
  • ?>
<?

$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>";
}

?>

Historique

30 septembre 2004 17:57:49 :
Mise à jour exit();
12 avril 2005 17:21:37 :
Suppression d'un accolade en trop
24 avril 2005 20:44:55 :
Mise à jour de l'url de mon serveur :p
25 novembre 2005 21:58:14 :
Manquait les $ à pass2 et email Sorry ...

Commentaires et avis

signaler à un administrateur
Commentaire de bobidop le 01/10/2004 14:49:27

ouai je trouve ca sympa mais tu devrai pluto utiliser un switch($var) plutot que d'utiliser plein de if...puis un default: a la place du else...
mais bon le code est bien claire kan mm!:)

signaler à un administrateur
Commentaire de plopman le 01/10/2004 18:01:30

Bonne idée, mais tu aurais pu un peu plus optimiser et réduire avec le switch :)
je donne un 8/10 pour cette idée originale :)
Plopman

signaler à un administrateur
Commentaire de julien629 le 15/10/2004 01:52:51

bonjour jai un pb :/
http://scriptsfr.com/test/NickServ.php
voila si tu peux m'aider sa serai kewl

signaler à un administrateur
Commentaire de motherboy le 15/10/2004 14:41:43

Le serveur ou tu heberge la page accepte les sockets ?

signaler à un administrateur
Commentaire de greg13127 le 22/03/2005 14:30:32

bonjour voila mon erreur :
Parse error: parse error in c:\program files\easyphp1-8\www\index.php on line 46

pouvez vous m'aider svp ( j'ai fait ce teste avec easyphp)
++

signaler à un administrateur
Commentaire de ekilibre le 25/03/2005 17:41:58

oui, j'ai pareil:
Parse error: parse error, unexpected '}' in /home/users/e/ekilibre/www/epbt/irc.php on line 46

depuis le temps que je cherchais ce script... (hebergeur: phpnet.org et il accepte les sockets)

signaler à un administrateur
Commentaire de motherboy le 25/03/2005 17:58:17

Rajoutez un } à la fin, avant le ?>

signaler à un administrateur
Commentaire de greg13127 le 03/04/2005 20:49:50

j'ai rajouter un } comme tu ma dit et ca me fait ca :
Parse error: parse error in c:\program files\easyphp1-8\www\index.php on line 46

:/

signaler à un administrateur
Commentaire de greg13127 le 04/04/2005 14:50:49

yessssss c'est bon j'ai trouver c'est tro bien 10/10
a++

signaler à un administrateur
Commentaire de motherboy le 12/04/2005 17:22:33

Désolé du temps pour corriger la petite erreur ...

signaler à un administrateur
Commentaire de Fantasya le 22/09/2005 16:07:12

deja vu sur un autre site

signaler à un administrateur
Commentaire de greg13127 le 07/10/2005 00:49:44

oui beaucoup de site copie sur celui-ci.

signaler à un administrateur
Commentaire de McPeter le 24/11/2005 13:24:22

Salut

[quote]
if ($nick != "" && $pass1 != "" && pass2 != "" && email != "") {
[/quote]

t'aurais pas oublié les '$' pour 'pass2' et 'email' là ?

sinon pas mal la source

signaler à un administrateur
Commentaire de motherboy le 25/11/2005 21:59:54

Corrigé mici

signaler à un administrateur
Commentaire de McPeter le 04/12/2005 03:23:02

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

signaler à un administrateur
Commentaire de poloroyal le 15/03/2006 01:38:05

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

signaler à un administrateur
Commentaire de leserveur le 03/07/2008 16:55:41

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

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Projet de bot irc [ par emilrom ] Bonjour, Je cherche un bon codeur en tcl, C, php, python dans le but de cr&#233;e un bot irc qui doit, par l'interm&#233;diaire de socket, g&#233;rer formulaire d'inscription nickserv pour irc [ par sylveur ] bonjour j'ai d&#233;ja poser cette question mai sens vin.&nbsp;&nbsp; je voudrai tout simple un code&nbsp;pour utiliser un formulaire d'inscription, q socket connection irc help me plzz [ par yohannIII ] bonjours je voudrais savoir comment me connecter a un server irc avec mot de pass requit et full name et adresse e-mail requis. merci d'avance. plus Les sockets php [ par PtitKev ] Bonjour&nbsp;&#224; toutes et a tous.Voila je test un bot socket en php. Je me suis rendu compte que les variables &#233;taient propre a une page donc socket [ par LaTatadu91 ] salut,voila j'essaie de faire communiquer deux programmes un en PHP et l'autre en C et j'utilise pr cela les sockets de PHP avec le protocole TCP/IP.. socket et HTTP [ par McFlyScript ] Bonjour,Je ne suis pas s&#251;r que le forum choisi soit le plus adapt&#233; enfin bon ;Je programme sur mIRC (aucune utilit&#233; de poster sur un fo probleme de type lors d'un envoi par socket... [ par LaTatadu91 ] Salut a tous; voila mon soucis c'est que j'envoi un message a un serveur ecrit en C par l'intermediaire de socket.... jusque la pas de soucis,le pb c probleme de type lors d'un envoi par socket... [ par LaTatadu91 ] Salut a tous; voila mon soucis c'est que j'envoi un message a un serveur ecrit en C par l'intermediaire de socket.... jusque la pas de soucis,le pb c Socket : Adresse d'un serveur [ par Leneuf8000 ] Bonjour, voil&#224;, j'ai trouv&#233; des sripts permettant l'envoi de mail et qui utilise la fonction fsockopen, or comme j'ai un probl&#232;me pour probleme de socket [ par bastor ] Salut a tous Bon j'eesais de faire un script pour les des email depuis mon site mais le probleme c que sa ne marche pas c'est pour sa que je pose la q


Nos sponsors

Sondage...

CalendriCode

Octobre 2008
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,390 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.