Vous n'êtes pas identifié(e).

Top posteurs

Statistiques

Partenaires

  • eXolia Hosting
  • Eggdrop.fr

#1 04/07/2011 10:31:15

TiSmA
Administrateur
Lieu : Saint Martin (87)
Inscription : 18/08/2004
Messages : 43
Site Web

[PHP] NickServ Web 1.1

Bonjour,

Voici une nouvelle version de mon NickServ Web qui dormait dans mon PC depuis un moment smile

Nom du fichier : regnick.php
Description : Enregistrement des pseudos sur NickServ via un formulaire web.

Code: PHP
<?php
##
## Configuration
##

// Adresse de Connexion du Serveur
$serveur="irc.domaine.tld"; 
// Port du Serveur
$port="6667";
// Pseudo de NickServ
$nickserv="NickServ";
// Realname & Message de quit
$mess="NickServ Web";
 
##
## Fonction
##

function nickreg($pseudo,$pass,$email) {
global $serveur, $port, $nickserv, $mess;
$ps=stripslashes($pseudo);
$mp=stripslashes($pass);
$em=stripslashes($email);
$fp=@fsockopen($serveur,$port, $errno, $errstr, 5);
if (!$fp) { header("Location: regnick.php?err=4"); }
else {
fputs($fp,"USER $ps $ps $ps :$mess \r\n"); 
fputs($fp,"NICK $ps \r\n");
while($data=fgets($fp,1024)) { 
$arg = explode(" ",$data);
if($arg[1]=="266") { fputs($fp,"PRIVMSG $nickserv :INFO $ps\r\n"); }
elseif($arg[0]=="ERROR") { fputs($fp,"QUIT : $mess \r\n"); fclose($fp); header("Location: regnick.php?err=8"); }
elseif($arg[0]=="PING") { fputs($fp,"PONG $arg[1]\r\n"); }
elseif($arg[1]=="401") { fputs($fp,"QUIT : $mess \r\n"); fclose($fp); header("Location: regnick.php?err=6"); }
elseif($arg[1]=="433") { fputs($fp,"QUIT : $mess \r\n"); fclose($fp); header("Location: regnick.php?err=7"); }
elseif($arg[1]=="NOTICE") { 
if(ereg("Le nick (.+) n'est pas enregistré", $data)) { fputs($fp,"PRIVMSG $nickserv :REGISTER $mp $em\r\n"); }
elseif(ereg("Ce pseudo est enregistré et protégé", $data)) { fputs($fp,"QUIT : $mess \r\n"); fclose($fp); header("Location: regnick.php?err=5"); }
elseif(ereg("Le pseudo (.+) est enregistré", $data)) { fputs($fp,"QUIT : $mess \r\n"); fclose($fp); header("Location: regnick.php?ok=1"); }
}
}
}
}
 
##
## Remote
## 

if($_POST['pseudo'] AND $_POST['motpass'] AND $_POST['email']) {
if(!preg_match("!^[0-9a-z\-._]+@[0-9a-z\-._]+\.[a-z]{2,4}$!i",$_POST['email'])) { header("Location: regnick.php?err=1"); }
elseif(!preg_match("!^[a-z0-9\-._]{5,10}$!i",$_POST['motpass'])) { header("Location: regnick.php?err=2"); }
elseif(!preg_match("!^[a-z0-9\-._]{2,15}$!i",$_POST['pseudo'])) { header("Location: regnick.php?err=3"); }
else { @nickreg($_POST['pseudo'],$_POST['motpass'],$_POST['email']); }
}
 
##
## Code HTML
##

echo"<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">
<html>
<head>
<title>NickServ Web</title>
<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; CHARSET=iso-8859-1\">
<META HTTP-EQUIV=\"CONTENT-LANGAGE\" CONTENT=\"fr\">
<script language=\"javascript\" type=\"text/javascript\">
function verif()
{
var vpseudo = /^[a-z0-9\-._]{2,15}$/i;
var vmail = /^[0-9a-z\-._]+@[0-9a-z\-._]+\.[a-z]{2,4}$/i;
var vpass = /^[a-z0-9\-._]{5,10}$/i;
if (document.nweb.pseudo.value.length == 0)
{
alert(\"Votre pseudo...\");
return false;
}
if (document.nweb.pseudo.value.length <= 2)
{
alert(\"Votre pseudo doit contenir minimum 3 caractères...\");
return false;
}
if (!vpseudo.test(document.nweb.pseudo.value))
{
alert(\"Votre pseudo comporte des caractères illegaux.\");
return false;
}
if (document.nweb.motpass.value.length == 0)
{
alert(\"Votre mot de passe...\");
return false;
}
if (document.nweb.motpass.value.length <= 5)
{
alert(\"Votre mot de passe doit contenir minimum 6 caractères...\");
return false;
}
if (!vpass.test(document.nweb.motpass.value))
{
alert(\"Votre mot de passe comporte des caractères illegaux.\");
return false;
}
if (document.nweb.email.value.length == 0)
{
alert(\"Votre E-mail...\");
return false;
}
if (!vmail.test(document.nweb.email.value))
{
alert(\"Email Incorrect\");
return false;
}
return true;
}
</script>
</head>
<body>
<form name=\"nweb\" OnSubmit=\"return verif()\" action=\"regnick.php\" method=\"post\">
<table>
<tr><td align=\"center\" colspan=\"2\"><b>NickServ Web</b><br><br></td></tr>";
if($_GET['err']=="1") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Email Incorrect</font><br><br></td></tr>"; }
elseif($_GET['err']=="2") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Mot de passe Incorrect</font><br><br></td></tr>"; }
elseif($_GET['err']=="3") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Pseudo Incorrect</font><br><br></td></tr>"; }
elseif($_GET['err']=="4") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Connexion Impossible</font><br><br></td></tr>"; }
elseif($_GET['err']=="5") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Pseudo déjà enregistré sur $nickserv</font><br><br></td></tr>"; }
elseif($_GET['err']=="6") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">$nickserv est offline</font><br><br></td></tr>"; }
elseif($_GET['err']=="7") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Pseudo en ligne sur le serveur</font><br><br></td></tr>"; }
elseif($_GET['err']=="8") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Erreur lors de la connexion au serveur</font><br><br></td></tr>"; }
elseif($_GET['ok']=="1") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Votre pseudo a bien été enregistré sur $nickserv</font><br><br></td></tr>"; }
echo"<tr><td align=\"right\">Votre Pseudo :  </td><td><input type=\"text\" name=\"pseudo\" size=\"30\" maxlength=\"20\"></td></tr>
<tr><td align=\"right\">Votre Mot de Passe :  </td><td><input type=\"text\" name=\"motpass\" size=\"30\" maxlength=\"10\"></td></tr>
<tr><td align=\"right\">Votre E-mail :  </td><td><input type=\"text\" name=\"email\" size=\"30\" maxlength=\"50\"></td></tr>
<tr><td align=\"right\" colspan=\"2\"><input type=\"submit\" value=\"Enregistrer\"></td></tr>
</table>
</form>
</body>
</html>";
 
?>


Inutile d'avoir un Tigre dans son ordi, s'il y'a un âne derrière l'écran...  big_smile

Hors ligne

#2 04/07/2011 21:48:05

Ajax
Nouveau IRCzien
Inscription : 17/06/2011
Messages : 1

Re : [PHP] NickServ Web 1.1

Merci wink

Hors ligne

#3 05/07/2011 13:09:23

mCx
Nouveau IRCzien
Inscription : 05/07/2011
Messages : 2

Re : [PHP] NickServ Web 1.1

Bonjour smile

NickServ Web sert à quoi exactement s'il te plait ?

Cordialement mCx.

Hors ligne

#4 05/07/2011 13:11:13

Darks
IRCzien
Inscription : 04/07/2011
Messages : 122

Re : [PHP] NickServ Web 1.1

Il sert à enregistrer un pseudo sur IRC via un formulaire web ^^

Hors ligne

#5 05/07/2011 13:12:09

Damien
Méchant Modérateur.
Lieu : Bruxelles
Inscription : 20/06/2011
Messages : 237
Site Web

Re : [PHP] NickServ Web 1.1

Tiens un mCx...

Alors, pour te répondre, tu le met sur ton site web, les gens remplissent le petit formulaire sur le site et une socket ce connecte au serveur IRC et enregistre le pseudo sous NickServ. (Comme un /msg nickserv register via IRC.) mais via une page web et non IRC.

Cordialement,


En informatique il n'y a pas de mauvais outils, il n'y a que de mauvais utilisateurs. Le problème le plus récurrent est celui qui se trouve entre la chaise et le clavier.

Hors ligne

#6 05/07/2011 13:49:04

TiSmA
Administrateur
Lieu : Saint Martin (87)
Inscription : 18/08/2004
Messages : 43
Site Web

Re : [PHP] NickServ Web 1.1

Bonjour,

Je viens d'ajouter une petite description mais le principal a été dit par Darks & Judge wink

@+


Inutile d'avoir un Tigre dans son ordi, s'il y'a un âne derrière l'écran...  big_smile

Hors ligne

#7 05/07/2011 17:24:48

mCx
Nouveau IRCzien
Inscription : 05/07/2011
Messages : 2

Re : [PHP] NickServ Web 1.1

Ok merci smile

Hors ligne

#8 18/11/2011 03:52:55

Avori
IRCzien en herbe
Lieu : Amiens
Inscription : 18/11/2011
Messages : 50
Site Web

Re : [PHP] NickServ Web 1.1

Bonjour

juste une petit modification pour ce qu'il veulent le mot de passe cacher, a la ligne

<tr><td align=\"right\">Votre Mot de Passe :  </td><td><input type=\"text\" name=\"motpass\" size=\"30\" maxlength=\"10\"></td></tr>

a côter de type vous remplacer text par password, quand la personne mettra le mot de passe ça feras comme tout les formulaire du style msn etc, le mot de passe seras cacher.

Hors ligne

#9 18/11/2011 04:23:53

Nic0
IRCzien en herbe
Inscription : 09/11/2011
Messages : 83
Site Web

Re : [PHP] NickServ Web 1.1

Je viens de découvrir ce code, je sais même pas quoi dire en faite, juste un exemple http://php.net/manual/en/function.mail.php
Désolé pour la personne qui a posté ce code, je respecte toujours la publication de code. sans rancune, mais si je fais tourner le code...


Linux and programming blog

Hors ligne

#10 18/11/2011 05:49:49

Nickoos
IRCzien
Lieu : Treignes
Inscription : 10/09/2011
Messages : 163

Re : [PHP] NickServ Web 1.1

Nic0 a écrit :

Je viens de découvrir ce code, je sais même pas quoi dire en faite, juste un exemple http://php.net/manual/en/function.mail.php
Désolé pour la personne qui a posté ce code, je respecte toujours la publication de code. sans rancune, mais si je fais tourner le code...

J'ai pas compris le rapport entre la fontion mail() de php et un script php qui permet d'enregistrer un pseudo sur irc via socket ...

Hors ligne

#11 18/11/2011 05:58:07

Nic0
IRCzien en herbe
Inscription : 09/11/2011
Messages : 83
Site Web

Re : [PHP] NickServ Web 1.1

Code: PHP
if(!preg_match("!^[0-9a-z\-._]+@[0-9a-z\-._]+\.[a-z]{2,4}$!i",$_POST['email'])) { header("Location: regnick.php?err=1"); }

une seule ligne, prise au hasard, ni plus ni moins wink


Linux and programming blog

Hors ligne

#12 18/11/2011 06:03:11

Nic0
IRCzien en herbe
Inscription : 09/11/2011
Messages : 83
Site Web

Re : [PHP] NickServ Web 1.1

En fait, y a une fonction, pas celle là, mais qui fait office de regexp pour du mail. c'est dans les fonctions du php5, je pourrais retrouver,
Cela dit, c'est quand même un code horrible, et ça n'engage que moi.

Dernière modification par Nic0 (18/11/2011 06:20:23)


Linux and programming blog

Hors ligne

#13 18/11/2011 06:10:42

Nic0
IRCzien en herbe
Inscription : 09/11/2011
Messages : 83
Site Web

Re : [PHP] NickServ Web 1.1

Un code ne dois pas ce répéter
{ echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">
9x ?

Je prends les critiques de mon code aussi: https://github.com/Nic0/tyrs

Dernière modification par Nic0 (18/11/2011 06:20:40)


Linux and programming blog

Hors ligne

#14 18/11/2011 06:26:13

Nickoos
IRCzien
Lieu : Treignes
Inscription : 10/09/2011
Messages : 163

Re : [PHP] NickServ Web 1.1

Au risque de me répèter :

J'ai pas compris le rapport entre la fontion mail() de php et un script php qui permet d'enregistrer un pseudo sur irc via socket ...

Code:
mail

(PHP 4, PHP 5)

mail — Send mail
bool mail ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] )

Sends an email.

Cite moi un endroit où ce script présenté ci-dessus envoi un mail.

Bonne recherche.

Dernière modification par Nickoos (18/11/2011 06:26:27)

Hors ligne

#15 18/11/2011 17:17:23

Darks
IRCzien
Inscription : 04/07/2011
Messages : 122

Re : [PHP] NickServ Web 1.1

Nickoos a écrit :

Au risque de me répèter :

J'ai pas compris le rapport entre la fontion mail() de php et un script php qui permet d'enregistrer un pseudo sur irc via socket ...

Code:
mail

(PHP 4, PHP 5)

mail — Send mail
bool mail ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] )

Sends an email.

Cite moi un endroit où ce script présenté ci-dessus envoi un mail.

Bonne recherche.

*mode troll on*
Parce qu'on envoie pas un mail pour utiliser le protocol IRC ?
*mode troll off*

Sérieusement Nic0, arrête tes posts inutiles, y a pas de concours pour le premier posteur sur le site.

Cdlt, Darks

Hors ligne

#16 17/02/2012 18:56:54

AbPhP
Nouveau IRCzien
Inscription : 17/02/2012
Messages : 5

Re : [PHP] NickServ Web 1.1

TiSmA a écrit :

Bonjour,

Voici une nouvelle version de mon NickServ Web qui dormait dans mon PC depuis un moment smile

Nom du fichier : regnick.php
Description : Enregistrement des pseudos sur NickServ via un formulaire web.

Code: PHP
<?php
##
## Configuration
##

// Adresse de Connexion du Serveur
$serveur="irc.domaine.tld"; 
// Port du Serveur
$port="6667";
// Pseudo de NickServ
$nickserv="NickServ";
// Realname & Message de quit
$mess="NickServ Web";
 
##
## Fonction
##

function nickreg($pseudo,$pass,$email) {
global $serveur, $port, $nickserv, $mess;
$ps=stripslashes($pseudo);
$mp=stripslashes($pass);
$em=stripslashes($email);
$fp=@fsockopen($serveur,$port, $errno, $errstr, 5);
if (!$fp) { header("Location: regnick.php?err=4"); }
else {
fputs($fp,"USER $ps $ps $ps :$mess \r\n"); 
fputs($fp,"NICK $ps \r\n");
while($data=fgets($fp,1024)) { 
$arg = explode(" ",$data);
if($arg[1]=="266") { fputs($fp,"PRIVMSG $nickserv :INFO $ps\r\n"); }
elseif($arg[0]=="ERROR") { fputs($fp,"QUIT : $mess \r\n"); fclose($fp); header("Location: regnick.php?err=8"); }
elseif($arg[0]=="PING") { fputs($fp,"PONG $arg[1]\r\n"); }
elseif($arg[1]=="401") { fputs($fp,"QUIT : $mess \r\n"); fclose($fp); header("Location: regnick.php?err=6"); }
elseif($arg[1]=="433") { fputs($fp,"QUIT : $mess \r\n"); fclose($fp); header("Location: regnick.php?err=7"); }
elseif($arg[1]=="NOTICE") { 
if(ereg("Le nick (.+) n'est pas enregistré", $data)) { fputs($fp,"PRIVMSG $nickserv :REGISTER $mp $em\r\n"); }
elseif(ereg("Ce pseudo est enregistré et protégé", $data)) { fputs($fp,"QUIT : $mess \r\n"); fclose($fp); header("Location: regnick.php?err=5"); }
elseif(ereg("Le pseudo (.+) est enregistré", $data)) { fputs($fp,"QUIT : $mess \r\n"); fclose($fp); header("Location: regnick.php?ok=1"); }
}
}
}
}
 
##
## Remote
## 

if($_POST['pseudo'] AND $_POST['motpass'] AND $_POST['email']) {
if(!preg_match("!^[0-9a-z\-._]+@[0-9a-z\-._]+\.[a-z]{2,4}$!i",$_POST['email'])) { header("Location: regnick.php?err=1"); }
elseif(!preg_match("!^[a-z0-9\-._]{5,10}$!i",$_POST['motpass'])) { header("Location: regnick.php?err=2"); }
elseif(!preg_match("!^[a-z0-9\-._]{2,15}$!i",$_POST['pseudo'])) { header("Location: regnick.php?err=3"); }
else { @nickreg($_POST['pseudo'],$_POST['motpass'],$_POST['email']); }
}
 
##
## Code HTML
##

echo"<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">
<html>
<head>
<title>NickServ Web</title>
<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; CHARSET=iso-8859-1\">
<META HTTP-EQUIV=\"CONTENT-LANGAGE\" CONTENT=\"fr\">
<script language=\"javascript\" type=\"text/javascript\">
function verif()
{
var vpseudo = /^[a-z0-9\-._]{2,15}$/i;
var vmail = /^[0-9a-z\-._]+@[0-9a-z\-._]+\.[a-z]{2,4}$/i;
var vpass = /^[a-z0-9\-._]{5,10}$/i;
if (document.nweb.pseudo.value.length == 0)
{
alert(\"Votre pseudo...\");
return false;
}
if (document.nweb.pseudo.value.length <= 2)
{
alert(\"Votre pseudo doit contenir minimum 3 caractères...\");
return false;
}
if (!vpseudo.test(document.nweb.pseudo.value))
{
alert(\"Votre pseudo comporte des caractères illegaux.\");
return false;
}
if (document.nweb.motpass.value.length == 0)
{
alert(\"Votre mot de passe...\");
return false;
}
if (document.nweb.motpass.value.length <= 5)
{
alert(\"Votre mot de passe doit contenir minimum 6 caractères...\");
return false;
}
if (!vpass.test(document.nweb.motpass.value))
{
alert(\"Votre mot de passe comporte des caractères illegaux.\");
return false;
}
if (document.nweb.email.value.length == 0)
{
alert(\"Votre E-mail...\");
return false;
}
if (!vmail.test(document.nweb.email.value))
{
alert(\"Email Incorrect\");
return false;
}
return true;
}
</script>
</head>
<body>
<form name=\"nweb\" OnSubmit=\"return verif()\" action=\"regnick.php\" method=\"post\">
<table>
<tr><td align=\"center\" colspan=\"2\"><b>NickServ Web</b><br><br></td></tr>";
if($_GET['err']=="1") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Email Incorrect</font><br><br></td></tr>"; }
elseif($_GET['err']=="2") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Mot de passe Incorrect</font><br><br></td></tr>"; }
elseif($_GET['err']=="3") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Pseudo Incorrect</font><br><br></td></tr>"; }
elseif($_GET['err']=="4") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Connexion Impossible</font><br><br></td></tr>"; }
elseif($_GET['err']=="5") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Pseudo déjà enregistré sur $nickserv</font><br><br></td></tr>"; }
elseif($_GET['err']=="6") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">$nickserv est offline</font><br><br></td></tr>"; }
elseif($_GET['err']=="7") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Pseudo en ligne sur le serveur</font><br><br></td></tr>"; }
elseif($_GET['err']=="8") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Erreur lors de la connexion au serveur</font><br><br></td></tr>"; }
elseif($_GET['ok']=="1") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Votre pseudo a bien été enregistré sur $nickserv</font><br><br></td></tr>"; }
echo"<tr><td align=\"right\">Votre Pseudo :  </td><td><input type=\"text\" name=\"pseudo\" size=\"30\" maxlength=\"20\"></td></tr>
<tr><td align=\"right\">Votre Mot de Passe :  </td><td><input type=\"text\" name=\"motpass\" size=\"30\" maxlength=\"10\"></td></tr>
<tr><td align=\"right\">Votre E-mail :  </td><td><input type=\"text\" name=\"email\" size=\"30\" maxlength=\"50\"></td></tr>
<tr><td align=\"right\" colspan=\"2\"><input type=\"submit\" value=\"Enregistrer\"></td></tr>
</table>
</form>
</body>
</html>";
 
?>

Bonjour ce script marche bien quand je le lance pour verifier si un pseudo est deja enregistré ou en ligne mais pour les enregistrements des pseudos ca ne marche pas du tout, il se connecte sur le serveur et au bout de 30 secondes il se deconnecte.

J'ai meme reduit le temps d'attente pour un enregistrement dans ma "services.conf" a 10 secondes, et a zero secondes pour lui permettre d'enregistrer un pseudo ca ne marche toujours pas.

Une idée pourquoi ca ne marche pas svp?
J'ai lu et relu le code ligne par ligne je ne vois rien d'anormal.

Merci, cela fait un moment que je cherche un simple script php pour permettre aux users de s'enregistrer via une interface web and je n'en trouve pas.

Hors ligne

#17 17/02/2012 20:29:03

Harakiri
Administrateur
Lieu : Paris
Inscription : 02/07/2011
Messages : 260

Re : [PHP] NickServ Web 1.1

Salut,

En regardant les éventuels messages d'erreur ou de retour de NickServ tu en saurais sûrement un peu plus. Là, comme ça... Difficile d'en dire plus à mon humble avis.


EOF

Hors ligne

#18 17/02/2012 20:52:25

AbPhP
Nouveau IRCzien
Inscription : 17/02/2012
Messages : 5

Re : [PHP] NickServ Web 1.1

Harakiri a écrit :

Salut,

En regardant les éventuels messages d'erreur ou de retour de NickServ tu en saurais sûrement un peu plus. Là, comme ça... Difficile d'en dire plus à mon humble avis.

Merci j'ai ajouté un code pour avoir les "Warnings" et voici ce que ca donne.

Code:
Notice: Undefined index: pseudo in /home/user/public_html/regnick.php on line 53
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 124
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 125
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 126
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 127
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 128
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 129
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 130
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 131
Notice: Undefined index: ok in /home/user/public_html/regnick.php on line 132

Ca un "Undefined index"

Celle ci est la ligne 53 dont il se plaint

Code: PHP
if($_POST['pseudo'] AND $_POST['motpass'] AND $_POST['email'])

toute la partie de ce code:


Code: PHP
if($_POST['pseudo'] AND $_POST['motpass'] AND $_POST['email']) {
if(!preg_match("!^[0-9a-z\-._]+@[0-9a-z\-._]+\.[a-z]{2,4}$!i",$_POST['email'])) { header("Location: regnick.php?err=1"); }
elseif(!preg_match("!^[a-z0-9\-._]{5,10}$!i",$_POST['motpass'])) { header("Location: regnick.php?err=2"); }
elseif(!preg_match("!^[a-z0-9\-._]{2,15}$!i",$_POST['pseudo'])) { header("Location: regnick.php?err=3"); }
else { @nickreg($_POST['pseudo'],$_POST['motpass'],$_POST['email']); }
}

puis cette partie du code

Code: PHP
<tr><td align=\"center\" colspan=\"2\"><b>NickServ Web</b><br><br></td></tr>";
if($_GET['err']=="1") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Email Incorrect</font><br><br></td></tr>"; }
elseif($_GET['err']=="2") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Mot de passe Incorrect</font><br><br></td></tr>"; }
elseif($_GET['err']=="3") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Pseudo Incorrect</font><br><br></td></tr>"; }
elseif($_GET['err']=="4") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Connexion Impossible</font><br><br></td></tr>"; }
elseif($_GET['err']=="5") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Pseudo déjà enregistré sur $nickserv</font><br><br></td></tr>"; }
elseif($_GET['err']=="6") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">$nickserv est offline</font><br><br></td></tr>"; }
elseif($_GET['err']=="7") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Pseudo en ligne sur le serveur</font><br><br></td></tr>"; }
elseif($_GET['err']=="8") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Erreur lors de la connexion au serveur</font><br><br></td></tr>"; }
elseif($_GET['ok']=="1") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Votre pseudo a bien été enregistré sur $nickserv</font><br><br></td></tr>"; }

Hors ligne

#19 18/02/2012 01:02:58

Nickoos
IRCzien
Lieu : Treignes
Inscription : 10/09/2011
Messages : 163

Re : [PHP] NickServ Web 1.1

Php5 n'aime pas chercher quand cela n'existe pas.

Code: PHP
if(isset($_POST['pseudo']) && isset($_POST['motpass']) && isset($_POST['email'])) {
if(!preg_match("!^[0-9a-z\-._]+@[0-9a-z\-._]+\.[a-z]{2,4}$!i",$_POST['email'])) { header("Location: regnick.php?err=1"); }
elseif(!preg_match("!^[a-z0-9\-._]{5,10}$!i",$_POST['motpass'])) { header("Location: regnick.php?err=2"); }
elseif(!preg_match("!^[a-z0-9\-._]{2,15}$!i",$_POST['pseudo'])) { header("Location: regnick.php?err=3"); }
else { @nickreg($_POST['pseudo'],$_POST['motpass'],$_POST['email']); }
}

Pareil pour la suite, joue avec les isset()

Hors ligne

#20 18/02/2012 02:02:00

AbPhP
Nouveau IRCzien
Inscription : 17/02/2012
Messages : 5

Re : [PHP] NickServ Web 1.1

Nickoos a écrit :

Php5 n'aime pas chercher quand cela n'existe pas.

Code: PHP
if(isset($_POST['pseudo']) && isset($_POST['motpass']) && isset($_POST['email'])) {
if(!preg_match("!^[0-9a-z\-._]+@[0-9a-z\-._]+\.[a-z]{2,4}$!i",$_POST['email'])) { header("Location: regnick.php?err=1"); }
elseif(!preg_match("!^[a-z0-9\-._]{5,10}$!i",$_POST['motpass'])) { header("Location: regnick.php?err=2"); }
elseif(!preg_match("!^[a-z0-9\-._]{2,15}$!i",$_POST['pseudo'])) { header("Location: regnick.php?err=3"); }
else { @nickreg($_POST['pseudo'],$_POST['motpass'],$_POST['email']); }
}

Pareil pour la suite, joue avec les isset()

Oui cela me donne les erreurs suivantes maintenant.


Code:
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 127
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 128
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 129
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 130
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 131
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 132
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 133
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 134
Code:
Notice: Undefined index: ok in /home/user/public_html/regnick.php on line 135

Re- Salut

J'ai essayé an isset ca me donnait une autre erreur.
voici la partie en question, la ligne 127 est biensur celle qui commence avec

if($_GET['err']=="1")

Code: PHP
<tr><td align=\"center\" colspan=\"2\"><b>NickServ Web</b><br><br></td></tr>";
if($_GET['err']=="1") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Email Incorrect</font><br><br></td></tr>"; }         
elseif($_GET['err']=="2") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Mot de passe Incorrect</font><br><br></td></tr>"; }
elseif($_GET['err']=="3") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Pseudo Incorrect</font><br><br></td></tr>"; }
elseif($_GET['err']=="4") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Connexion Impossible</font><br><br></td></tr>"; }
elseif($_GET['err']=="5") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Pseudo déjà enregistré sur $nickserv</font><br><br></td></tr>"; }
elseif($_GET['err']=="6") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">$nickserv est offline</font><br><br></td></tr>"; }
elseif($_GET['err']=="7") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Pseudo en ligne sur le serveur</font><br><br></td></tr>"; }
elseif($_GET['err']=="8") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Erreur lors de la connexion au serveur</font><br><br></td></tr>"; }
elseif($_GET['ok']=="1") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Votre pseudo a bien été enregistré sur $nickserv</font><br><br></td></tr>"; }

Si tu as des suggestions ca sera sympa merci, je ne m'y connais pas trop en php, merci d'avance

Hors ligne

#21 18/02/2012 18:13:55

Nickoos
IRCzien
Lieu : Treignes
Inscription : 10/09/2011
Messages : 163

Re : [PHP] NickServ Web 1.1

Pour la suite, fais plutôt un truc du style :

Code: PHP
<?php
if(isset($_GET['err'])) { $error = $_GET['err']; } else { $error = ""; }
if(isset($_GET['ok'])) { $ok = $_GET['ok']; } else { $ok = ""; }
echo "<tr><td align=\"center\" colspan=\"2\"><b>NickServ Web</b><br><br></td></tr>";
if($error=="1") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Email Incorrect</font><br><br></td></tr>"; }         
elseif($error=="2") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Mot de passe Incorrect</font><br><br></td></tr>"; }
elseif($error=="3") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Pseudo Incorrect</font><br><br></td></tr>"; }
elseif($error=="4") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Connexion Impossible</font><br><br></td></tr>"; }
elseif($error=="5") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Pseudo déjà enregistré sur $nickserv</font><br><br></td></tr>"; }
elseif($error=="6") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">$nickserv est offline</font><br><br></td></tr>"; }
elseif($error=="7") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Pseudo en ligne sur le serveur</font><br><br></td></tr>"; }
elseif($error=="8") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Erreur lors de la connexion au serveur</font><br><br></td></tr>"; }
elseif($ok=="1") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Votre pseudo a bien été enregistré sur $nickserv</font><br><br></td></tr>"; } 
?>

Dernière modification par Nickoos (18/02/2012 18:15:00)

Hors ligne

#22 18/02/2012 20:13:13

AbPhP
Nouveau IRCzien
Inscription : 17/02/2012
Messages : 5

Re : [PHP] NickServ Web 1.1

AbPhP a écrit :
Nickoos a écrit :

Php5 n'aime pas chercher quand cela n'existe pas.

Code: PHP
if(isset($_POST['pseudo']) && isset($_POST['motpass']) && isset($_POST['email'])) {
if(!preg_match("!^[0-9a-z\-._]+@[0-9a-z\-._]+\.[a-z]{2,4}$!i",$_POST['email'])) { header("Location: regnick.php?err=1"); }
elseif(!preg_match("!^[a-z0-9\-._]{5,10}$!i",$_POST['motpass'])) { header("Location: regnick.php?err=2"); }
elseif(!preg_match("!^[a-z0-9\-._]{2,15}$!i",$_POST['pseudo'])) { header("Location: regnick.php?err=3"); }
else { @nickreg($_POST['pseudo'],$_POST['motpass'],$_POST['email']); }
}

Pareil pour la suite, joue avec les isset()

Oui cela me donne les erreurs suivantes maintenant.


Code:
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 127
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 128
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 129
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 130
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 131
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 132
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 133
Notice: Undefined index: err in /home/user/public_html/regnick.php on line 134
Code:
Notice: Undefined index: ok in /home/user/public_html/regnick.php on line 135

Re- Salut

J'ai essayé an isset ca me donnait une autre erreur.
voici la partie en question, la ligne 127 est biensur celle qui commence avec

if($_GET['err']=="1")

Code: PHP
<tr><td align=\"center\" colspan=\"2\"><b>NickServ Web</b><br><br></td></tr>";
if($_GET['err']=="1") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Email Incorrect</font><br><br></td></tr>"; }         
elseif($_GET['err']=="2") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Mot de passe Incorrect</font><br><br></td></tr>"; }
elseif($_GET['err']=="3") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Pseudo Incorrect</font><br><br></td></tr>"; }
elseif($_GET['err']=="4") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Connexion Impossible</font><br><br></td></tr>"; }
elseif($_GET['err']=="5") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Pseudo déjà enregistré sur $nickserv</font><br><br></td></tr>"; }
elseif($_GET['err']=="6") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">$nickserv est offline</font><br><br></td></tr>"; }
elseif($_GET['err']=="7") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Pseudo en ligne sur le serveur</font><br><br></td></tr>"; }
elseif($_GET['err']=="8") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Erreur lors de la connexion au serveur</font><br><br></td></tr>"; }
elseif($_GET['ok']=="1") { echo "<tr><td align=\"center\" colspan=\"2\"><font size=\"1\">Votre pseudo a bien été enregistré sur $nickserv</font><br><br></td></tr>"; }

Si tu as des suggestions ca sera sympa merci, je ne m'y connais pas trop en php, merci d'avance

Merci beaucoup Nickoos,

Ca marche bien, y'a plus de notice, sauf que ca n'enrengistre pas les pseudos. sad pourtant le code a l'air tres correct.

Merci encore pour ton aide Nickoos

Dernière modification par AbPhP (18/02/2012 20:14:04)

Hors ligne

#23 18/02/2012 20:40:03

AbPhP
Nouveau IRCzien
Inscription : 17/02/2012
Messages : 5

Re : [PHP] NickServ Web 1.1

Nickoos, Merci

Ca marche maintenant, j'ai du enlever le delay sur le serveur et l'enregistrement s'est tres bien passé
Sauf que ca ne confirme pas l'enregistrement comme ca devrait.

je vais regarder le code de plus pres et voir pourquoi la derniere ligne ne s'execute pas quand le pseudo est enregistré.

Merci beaucoup

Je vais le re-tester encore puis je vais coller tout le code ici pour les autres qui voudraient bien l'utiliser.

A suivre...

Hors ligne

#24 03/12/2012 05:11:04

Diims
Nouveau IRCzien
Lieu : Jambes
Inscription : 24/11/2011
Messages : 13
Site Web

Re : [PHP] NickServ Web 1.1

Bonsoir..

Personnellement, j'ai une erreur quand j'essaye ce code.

Erreur 4 : ''Connexion impossible''.

Pourtant j'ai effectué un ping vers la cible du serveur il ping bien.

Serveur : irc.diimsdesign.com
(page : www.diimsdesign.net/irc/regnick.php)

Que faire pour que cela fonctionne ?


Merci.


Citation :
"Ne jamais se fier aux apparences."

Hors ligne

#25 03/12/2012 10:07:30

Harakiri
Administrateur
Lieu : Paris
Inscription : 02/07/2011
Messages : 260

Re : [PHP] NickServ Web 1.1

Il semble que ce soit juste une petite erreur de nom de domaine de ta part.
irc.diimsdesign.com (85.201.85.105) n'a pas l'air de contenir de serveur IRC sur le port 6667, en revanche, irc.diimsdesign.net (5.39.11.157) si.


EOF

Hors ligne

Pied de page des forums

454671 visites ( 173 aujourd'hui ) 7 visiteurs en ligne
Copyright © 2004 - 2013 IRCz