Php formulaire d'inscription

Résolu
jphilippev Messages postés 253 Date d'inscription lundi 27 février 2006 Statut Membre Dernière intervention 5 décembre 2008 - 12 déc. 2007 à 15:44
cs_kamal32 Messages postés 2 Date d'inscription mardi 18 août 2009 Statut Membre Dernière intervention 21 août 2009 - 21 août 2009 à 17:23
Bonjour,

J'ai un script qui donne entre autre ca :

function show_form($nom="",$pass="",$pass2="",$email="",$error="")
{
$page_inscription  = "<form action=".$_SERVER["PHP_SELF"]. method="post"">";
$page_inscription .= "Merci de remplir le formulaire ci-dessous :

";
$page_inscription .= "Login désiré :

";
$page_inscription .= "Mot de passe :

";
$page_inscription .= "Confirmation du mot de passe :</td><td>

";
$page_inscription .= "E-mail :

";
$page_inscription .= "

";
$page_inscription .= "".$error."

";
$page_inscription .= "</form>";
echo $page_inscription;
}

le problème c'est que sur ma page ca me donne ça :

"; $page_inscription .= " Merci de remplir le formulaire ci-dessous :

"; $page_inscription .= " Login désiré :

"; $page_inscription .= " Mot de passe :

"; $page_inscription .= " Confirmation du mot de passe :<td></td>

"; $page_inscription .= " E-mail : etc....

je pense que ca vient de la 1ere ligne mais jsuis un peu nul en php
donc si quelqu'un pouvait m'aider ca serait sympathique.

merci

www.creativs.fr

11 réponses

cs_lowkey Messages postés 260 Date d'inscription jeudi 31 mai 2007 Statut Membre Dernière intervention 5 novembre 2010 1
12 déc. 2007 à 17:26
Salut !

Déjà, remplace tes <? par <?php
Ensuite, si tu enlève la fonction show_form(), tu as toujours ce problème ?

<hr />
lowke<sub>y

WWJD for havin' a nice code ?</sub>
3
jphilippev Messages postés 253 Date d'inscription lundi 27 février 2006 Statut Membre Dernière intervention 5 décembre 2008 1
12 déc. 2007 à 15:49
hé quest ce qu'il est arrivé a mon message??? pourquoi il est à l'envers????

www.creativs.fr
0
cs_lowkey Messages postés 260 Date d'inscription jeudi 31 mai 2007 Statut Membre Dernière intervention 5 novembre 2010 1
12 déc. 2007 à 16:38
Salut!

Tu peux coller le code qui se trouve avant l'appel de ta fonction stp?

<hr />
lowke<sub>y

WWJD for havin' a nice code ?</sub>
0
jphilippev Messages postés 253 Date d'inscription lundi 27 février 2006 Statut Membre Dernière intervention 5 décembre 2008 1
12 déc. 2007 à 17:00
bien sur :)

<?
//------------------------------------------------------
// Fonction Inscription
// - Attribution d'une id unique
// - Tous les champs doivent être remplis
// - Les deux champs passwords doivent être identiques
// - Les champs ne doivent pas contenir d'apostrophe
// - Le login ne doit pas déjà exister
// - Le mail ne doit pas être dans la blackliste
// - Envoi d'un mail avec une adresse de confirmation
//------------------------------------------------------
function inscription()
{
require "connect.inc.php";
$page=$serveur.$_SERVER["PHP_SELF"];
$nom=$_POST["nom"];
$pass=$_POST["pass"];
$pass2=$_POST["pass2"];
$email=$_POST["email"];
$IP=$_SERVER['REMOTE_ADDR'];
$heure=time();



// Attendre qu'il n'y ait pas d'autres user avec le même numéro de session.
do
{
$uniqueid=md5(time());
$resultat = mysql_query("SELECT * FROM users WHERE uniqueid='$uniqueid'");
}
while(false!=($ligne = mysql_fetch_array($resultat)));



// Vérification diverses et variées.
if($nom=="" || $pass=="" || $pass2=="" || $email==""){show_form($nom,$pass,$pass2,$email,'Certains champs ne sont pas remplis !');die();} // Tous les champs doivent être remplis
if($pass!=$pass2){show_form($nom,$pass,$pass2,$email,'Le mot de passe et la confirmation sont différents.');die();} // Le mot de passe et la confirmation doivent être identiques
if(!(!strrpos($_POST["nom"], "'") && !strrpos($_POST["pass"], "'") && !strrpos($_POST["email"], "'"))){show_form($nom,$pass,$pass2,$email,'Ne pas utiliser de caractères spéciaux');die();} // Eviter les failles SQL
$resultat = mysql_query("SELECT * FROM users WHERE userid='$nom'");
if(false!=($ligne = mysql_fetch_array ($resultat))){show_form($nom,$pass,$pass2,$email,"Le membre (".$nom.") existe déjà");die();}  // Si le login est déjà pris
$resultat = mysql_query("SELECT * FROM users WHERE email='$email' AND level='blacklist'");
if(false!=($ligne = mysql_fetch_array ($resultat))){show_form($nom,$pass,$pass2,$email,"L'adresse e-mail (".$email.") est blacklistée. Utilisez une autre adresse mail.");die();}   // Si l'e-mail est dans la blacklist



$subject  = "Veuillez confirmer votre inscription";
$headers  = "From:
[mailto:ne_pas_repondre@free.fr\n
ne_pas_repondre@free.fr\n
]
";
$message  = "Veuillez confirmer votre inscription\n";
$message .= "Bonjour ".$nom."\n\n";
$message .= "Vous avez reçu ce mail parce que vous ou quelqu'un d'autre utilisant votre adresse mail s'est enregistré sur le site ".$site_name.".\n";
$message .= "Pour valider cet inscription, cliquez sur ce lien :\n ".$page."?code=".$uniqueid."&BL=0 \n";
$message .= "Si vous vous n'êtes pas inscrit sur ".$site_name.", veuillez ignorer ce message et accepter nos excuses.\n";
$message .= "Vous pouvez aussi choisir d'ajouter votre mail à notre blacklist pour ne plus recevoir de mail d'inscription de notre part en cliquant sur ce lien :\n ".$page."?code=".$uniqueid."&BL=1 \n";
$message .= "Votre e-mail a été envoyé de l'IP ".$IP.".\n\n";
$message .= "Cordialement,\n";
$message .= "Le Webmaster";



// Envoi du mail
if(@mail($email, $subject, $message, $headers))
    {
    $query = "INSERT INTO users VALUES ('$nom','$pass','$uniqueid','en_attente','$email','$heure','$IP')"; // On ajoute le membre à la liste avec le status en attente
    mysql_query($query);
    mysql_close();



    $page_confirmation  = "Merci !

Vous devriez recevoir un e-mail à l'adresse suivante : ".$email.".

";
    $page_confirmation .= "Veuillez confirmer l'inscription en cliquant sur le lien se trouvant sur le mail.

";
    echo $page_confirmation;
    }
else
{
     show_form($nom,$pass,$pass2,$email,"Le mail de confirmation n'a pu être envoyé. Peut-être que l'adresse n'est pas valide. Veuillez contacter le webmaster s'il vous plait.");
}
}



//------------------------------------------------------
// Fonction Formulaire
// - Retourne le formulaire avec les messages d'erreurs
//------------------------------------------------------
function show_form($nom="",$pass="",$pass2="",$email="",$error="")


{
$page_inscription  = "<form action="".$_SERVER["PHP_SELF"]."" method="post">";
$page_inscription .= "Merci de remplir le formulaire ci-dessous :

";
$page_inscription .= "Login désiré :

";
$page_inscription .= "Mot de passe :

";
$page_inscription .= "Confirmation du mot de passe :</td><td>

";
$page_inscription .= "E-mail :

";
$page_inscription .= "

";
$page_inscription .= "".$error."

";
$page_inscription .= "</form>";
echo $page_inscription;
}



//-------------------------------------------------------------------------------
// Fonction de vérification de l'adresse de confirmation
// - Suppression des utilisateurs n'ayant pas confirmer avant la durée impartie
// - Extraction de la personne concernée
// - Validation de son enregistrement
// - Si l'on veut être blacklisté, après confirmation on effectue le blacklistage
// - Le webmaster recoit un mail lorsque l'inscription est validé
//-------------------------------------------------------------------------------
function code_check($code="",$BL="")
{
require "connect.inc.php";





$heure=time();


// On profite de l'occasion pour supprimer les users n'ayant pas confirmé dans la durée impartie
$heure2=$heure-$validite;
mysql_query("DELETE FROM users WHERE heure<$heure2 AND level='en_attente'");


// On extrait la personne qui souhaite valider son inscription
$uniqueid=$code;$resultat mysql_query("SELECT * FROM users WHERE uniqueid'$uniqueid' AND level='en_attente'");
if(false==($ligne = mysql_fetch_array ($resultat)))
{
mysql_close();
$page_validation = "Ce code n'existe pas, est expiré ou à déjà été validé, veuillez remplir à nouveau le formaulaire : [mailto:ne_pas_repondre@free.fr\n ne_pas_repondre@free.fr\n]";
       @mail($adresse_webmaster, $subject, $message, $headers);
      }
  }
  // Si l'utilisateur vient pour être blacklisté, on passe son level de "en_attente" à "blacklist"
  // Mais avant une petite confirmation
  if($BL==1)
  {
      $page_validation = "Vous souhaitez ajouter votre adresse mail à notre blackliste. Cliquez ici pour que vous puissiez confirmer.";
  }
  // Si l'utilisateur a confirmé qu'il veut être dans la liste noire, on l'y met
  if($BL==2)
  {
      mysql_query("UPDATE users SET level='blacklist' WHERE uniqueid ='$uniqueid' AND level='en_attente'");
      $page_validation = 'Votre e-mail a été blacklisté. Vous ne receverez plus aucun e-mail de notre part.';
  }
  mysql_close();
}
echo "".$page_validation."

";
}



voici la page en entier



merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jphilippev Messages postés 253 Date d'inscription lundi 27 février 2006 Statut Membre Dernière intervention 5 décembre 2008 1
12 déc. 2007 à 17:40
merci lowkey
les message d'erreurs on disparus
mais comment je verifie ce ke show form me verifiais?

www.creativs.fr
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
12 déc. 2007 à 18:56
Et si tu remets show_form(), ça donne quoi? Parce que à première vue, il n'y a pas de raison pour que ton code plante de cette manière; show_form() a une syntaxe correcte.
0
cs_lowkey Messages postés 260 Date d'inscription jeudi 31 mai 2007 Statut Membre Dernière intervention 5 novembre 2010 1
12 déc. 2007 à 21:52
Effectivement, si c'est la fonction qui pose problème, ce n'est pas très logique, elle a l'air correcte.

<hr />
lowke<sub>y

WWJD for havin' a nice code ?</sub>
0
jphilippev Messages postés 253 Date d'inscription lundi 27 février 2006 Statut Membre Dernière intervention 5 décembre 2008 1
13 déc. 2007 à 09:50
merci ca fonctionne bien mais pourquoi hier ca fonctionnais pas???
(j'aime bien comprendre les choses)

merci du temps que vous me donnez

www.creativs.fr
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
13 déc. 2007 à 13:57
Sans doute ton <?
Ton serveur est bien configurée, avec short_open_tag à off, et donc ne pouvait pas interpréter rton code.
0
jphilippev Messages postés 253 Date d'inscription lundi 27 février 2006 Statut Membre Dernière intervention 5 décembre 2008 1
13 déc. 2007 à 14:15
ok merci malalam

www.creativs.fr
0
cs_kamal32 Messages postés 2 Date d'inscription mardi 18 août 2009 Statut Membre Dernière intervention 21 août 2009
21 août 2009 à 17:23
, je veux aider moi , la création de fichiers de base de données et le fichier de vérification de l'information, je vous remercie.

avec Cette page


<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>accueil</title>
<link href="css/pages_katado.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--

body {
cursor:url("images/minikata.cur"), auto;
margin-top: 15px;
background-image: url(images/fond_pages.gif);
background-repeat: repeat-x;
background-color: #320000;
}
.Style1 {
font-size: 14px;
font-weight: bold;
color: #FFFFFF;
}

a:link {
color: #FFFFFF;
}
a:visited {
color: #FFFFFF;
}
a:hover {
cursor:url("images/minikata.cur"), auto;
}
-->
</style>
</head>



Votre demande a bien été

prise en compte!

Nous vous contacterons prochainement!

Aligato gozaimase!



</html>
0
Rejoignez-nous