Page 1 sur 1

Formulaire d'inscription

Posté : 09 août 2007, 16:12
par benjam89
Re-bonjour,:)

J'ai un problème avec mon script d'inscription, j'ai cette erreur:

Code : Tout sélectionner

Parse error: parse error, unexpected T_DEFAULT in /homepages/4/d205857560/htdocs/mon-hotel-virtuel.com/site2/inscription1.php on line 70
et voici mon script:
<?
require("config.php");

switch($action) {
/*-----------------------------------------------------------------*/
/*	AJOUT DANS MySQL			*/
/*-----------------------------------------------------------------*/

case "add";

// CONNEXION A LA BASE DE DONNEE
$db_link = @mysql_connect($sql_serveur,$sql_user,$sql_passwd);
if(!$db_link) {echo "Connexion impossible à la base de données <b>$sql_bdd</b> sur le serveur <b>$sql_server</b><br>Vérifiez les paramètres du fichier conf_gastro.php"; exit;}

// TEST SUR LES VALEURS SAISIES
if($login==""){echo "Vous devez choisir un login<br><br><a href=\"javascript:window.history.back()\">Retour</a>";exit;}
if($pass==""){echo "Vous devez choisir un mot de passe<br><br><a href=\"javascript:window.history.back()\">Retour</a>";exit;}
if($email==""){echo "Vous devez entrer votre Adresse Email<br><br><a href=\"javascript:window.history.back()\">Retour</a>";exit;}
if($nom_chaine==""){echo "Vous devez choisir le nom de votre chaine<br><br><a href=\"javascript:window.history.back()\">Retour</a>";exit;}
// CHAMPS SUPLEMENTAIRES, inspirez-vous des lignes suivantes. Pour qu'un champs soit facultatif, omettez la ligne.
//if($email==""){echo "Vous n'avez pas saisi votre email<br><br><a href=\"javascript:window.history.back()\">Retour</a>";exit;}
//if($ville==""){echo "Vous n'avez pas saisi la ville<br><br><a href=\"javascript:window.history.back()\">Retour</a>";exit;}

// ON VERIFIE SI CE PSEUDO EXISTE DEJA
$requete=mysql_db_query($sql_bdd,"select login from tbl_user where pseudo=\"$login\"",$db_link) or die(mysql_error());
$num=mysql_num_rows($requete);
if($num!=0)
	{
	echo "Ce login existe déjà, veuillez en choisir un autre<br><br><a href=\"javascript:window.history.back()\">Retour</a><p>";
	}
	
	// ON VERIFIE SI LE NOM DE LA CHAINE EXISTE DEJA
$requete=mysql_db_query($sql_bdd,"select nom_chaine from tbl_user where nom_chaine=\"$nom_chaine\"",$db_link) or die(mysql_error());
$num=mysql_num_rows($requete);
if($num!=0)
	{
	echo "Cette entreprise existe déjà, veuillez choisir un autre nom<br><br><a href=\"javascript:window.history.back()\">Retour</a>";
	}
	// ON VERIFIE SI L'ADRESSE EMAIL EXISTE DEJA
$requete=mysql_db_query($sql_bdd,"select email from tbl_user where email=\"$email\"",$db_link) or die(mysql_error());
$num=mysql_num_rows($requete);
if($num!=0)
	{
	echo "Cette adresse email est déjà utilisée, veuillez saisir une autre<br><br><a href=\"javascript:window.history.back()\">Retour</a>";
	}
	
	//Envoi d'un mail de confirm
	$body="Bonjour $login,\n\nNous vous confirmons votre inscription sur Mon-Hôtel-Virtuel.com\nVeuillez ne pas perdre ce mail pour pourvoir vous identifier a nouveau\n\nVoici les informations que vous avez saisi:\n\nPseudo: $login\nMot de passe: $pass\nNom de votre Chaine d'Hôtels: $nom_chaine";
    mail("$login <$email>","Confirmation de l'inscription sur Mon Hôtel Virtuel",$body, "From: Mon Hôtel Virtuel <[email protected]>");
	
	// INSERTION DANS LA TABLE 
	$requete=mysql_db_query($sql_bdd,"insert into tbl_user values (\"$id\",\"$login\",\"$pass\",\"$email\",\"$argent\",\"$nom_chaine\",\"$news\")",$db_link) or die(mysql_error());
	// CHAMPS SUPLEMENTAIRES, complétez la requête précédente en ajoutant les variables et en respectant l'ordre des colonnes de la table. Exemple :
	// insert into membre values ($idnew,\"$id\",\"$pseudo_membre\",\"$passe_membre\",\"$email\",\"$ville\")
	
	// REDIRECTION VERS LA PAGE D'ENTREE DE L'ESPACE MEMBRE
	echo "Merci, vous êtes bien enregistré. Vous pouvez dès à présent vous connecter !";
	}

// DECONNEXION MYSQL
mysql_close($db_link);

break;


/*-----------------------------------------------------------------*/
/*	AFFICHAGE DU FORMULAIRE			*/
/*-----------------------------------------------------------------*/

default;
echo "	<h2>Nouveau membre</h2>
	<form action=\"inscription.php\" method=\"post\">
	<input type=\"hidden\" name=\"action\" value=\"add\">
	Chosissez un pseudo<br><input type=\"text\" name=\"pseudo_membre\"><br>
	Chosissez un mot de passe<br><input type=\"password\" name=\"passe_membre\"><br>
	Adresse Email<br><input type=\"text\" name=\"email\"><br>
	<input type=\"hidden\" name=\"argent\" value=\"300000\">
	Choisissez un nom pour votre Chaine d'Hôtels<br><input type=\"text\" name=\"nom_chaine\"><br>
	Si vous acceptez de recevoir des email de Mon Hôtel Virtuel cochez cette case. (Recommandé pour recevoir le mail qui vous indiquera l'ouverture officiel du jeu)<input type=\"checkbox\" name=\"news\" value=\"oui\">
	<! -- CHAMPS SUPLEMENTAIRES, décommentez les 2 lignes suivantes -->
	<!-- Votre email<br><input type=\"text\" name=\"email\"><br> -->
	<!-- Ville<br><input type=\"text\" name=\"ville\"><br> -->
	<input type=\"submit\" value=\"S'inscrire\">
	</form>
	<font face=\"Verdana\" size=\"2\"><a href=\"http://www.mon-hotel-virtuel.com/site2/login.php\">Se connecter</a></font>";
break;
}
?>
</center>
</font>
</body>
</html></center>
Merci de vos réponses

Posté : 09 août 2007, 16:20
par zeus
:(

Franchement, benjam89, j'en arrive rarement à un tel niveau, mais là ... tu vas franchement trop loin ...

1/ tu as fait un effort sur les balises PHP mais tu n'a même pas regardé le résultat ... il existe un bouton "prévisualiser" à côté de "Poster" qui t'aurait permis de voir qu'il y avait beaucoup d'espace et qu'on ne voyait pas ton code

2/ tu n'attends pas la résolution d'un problème avant de passer au suivant et tu as toujours plusieurs questions en cours en même temps

3/ tu ne fait aucun effort, autant dans le réflexion que dans la demande
- tu as une erreur à la ligne 70 de ton code, c'est écrit dans le message d'erreur, je n'ai fait que le lire
- tu n'as même pas fait l'effort de cibler l'erreur et tu nous as posé ton code tel quel

Je te demande franchement de faire un effort sinon, je clôture des sujets pour te laisser le temps de réfléchir et ne pas demander plus vite que ton ombre.

Dernier avertissement.

Posté : 09 août 2007, 16:25
par benjam89
Alors, déjà, t'aurais attendu un peu aussi, j'étais en train d'éditer mon code dans un bloc de texte pour l'édité sur le forum, ensuite le dernier forum, je l'ai marqué [résolu] et ensuite, je ne sais même pas ce que veut dire cette erreur à part que c'est à la ligne 70

Voici mon code:
<?
                                                                                                                              

                                                                          require("config.php");
                                                                                                                              

                                                                                                                              

    
switch($action) {
                                                                                                                              

                                                                                                                              

    /*-----------------------------------------------------------------*/
                                                                                                                              

                                                                                                                              

    /*	AJOUT DANS MySQL			*/
                                                                                                                              

                                                                                                                              

    /*-----------------------------------------------------------------*/
                                                                                                                              

                                                                                                                              

    
                                                                                                    case "add";
                                                                                                                              

                                                                                                                              

    
// CONNEXION A LA BASE DE DONNEE
                                                                                                                              

$db_link = @mysql_connect($sql_serveur,$sql_user,$sql_passwd);
if(!$db_link) {echo "Connexion impossible à la base de données <b>$sql_bdd</b> sur le serveur <b>$sql_server</b><br>Vérifiez 

les paramètres du fichier conf_gastro.php"; exit;}
                                                                                                                              

                                                                                                                              

    
// TEST SUR LES VALEURS SAISIES
if($login==""){echo "Vous devez choisir un login<br><br><a href=\"javascript:window.history.back()\">Retour</a>";exit;}
if($pass==""){echo "Vous devez choisir un mot de passe<br><br><a href=\"javascript:window.history.back()\">Retour</a>";exit;}
if($email==""){echo "Vous devez entrer votre Adresse Email<br><br><a 

href=\"javascript:window.history.back()\">Retour</a>";exit;}
if($nom_chaine==""){echo "Vous devez choisir le nom de votre chaine<br><br><a 

href=\"javascript:window.history.back()\">Retour</a>";exit;}
// CHAMPS SUPLEMENTAIRES, inspirez-vous des lignes suivantes. Pour qu'un champs soit facultatif, omettez la ligne.
                                                                                                                              

                                                                                                                              

//if($email==""){echo "Vous n'avez pas saisi votre email<br><br><a 

href=\"javascript:window.history.back()\">Retour</a>";exit;}
                                                                                                                              

                                                                                                                              

//if($ville==""){echo "Vous n'avez pas saisi la ville<br><br><a href=\"javascript:window.history.back()\">Retour</a>";exit;}
                                                                                                                              

                                                                                                                              

    
// ON VERIFIE SI CE PSEUDO EXISTE DEJA
$requete=mysql_db_query($sql_bdd,"select login from tbl_user where pseudo=\"$login\"",$db_link) or die(mysql_error());
$num=mysql_num_rows($requete);
if($num!=0)
{
echo "Ce login existe déjà, veuillez en choisir un autre<br><br><a href=\"javascript:window.history.back()\">Retour</a><p>";
}
                                                                                                                              

                                                                                                                              

    	
// ON VERIFIE SI LE NOM DE LA CHAINE EXISTE DEJA
$requete=mysql_db_query($sql_bdd,"select nom_chaine from tbl_user where nom_chaine=\"$nom_chaine\"",$db_link) or 

die(mysql_error());
$num=mysql_num_rows($requete);
if($num!=0)
{
echo "Cette entreprise existe déjà, veuillez choisir un autre nom<br><br><a 

href=\"javascript:window.history.back()\">Retour</a>";
}
// ON VERIFIE SI L'ADRESSE EMAIL EXISTE DEJA
$requete=mysql_db_query($sql_bdd,"select email from tbl_user where email=\"$email\"",$db_link) or die(mysql_error());
$num=mysql_num_rows($requete);
if($num!=0)
{
echo "Cette adresse email est déjà utilisée, veuillez saisir une autre<br><br><a 

href=\"javascript:window.history.back()\">Retour</a>";
}
                                                                                                                              

                                                                                                                              

    	
//Envoi d'un mail de confirm
$body="Bonjour $login,\n\nNous vous confirmons votre inscription sur Mon-Hôtel-Virtuel.com\nVeuillez ne pas perdre ce mail 

pour pourvoir vous identifier a nouveau\n\nVoici les informations que vous avez saisi:\n\nPseudo: $login\nMot de passe: 

$pass\nNom de votre Chaine d'Hôtels: $nom_chaine";
mail("$login <$email>","Confirmation de l'inscription sur Mon Hôtel Virtuel",$body, "From: Mon Hôtel Virtuel 

<[email protected]>");
                                                                                                                              

                                                                                                                              

    	
// INSERTION DANS LA TABLE 
$requete=mysql_db_query($sql_bdd,"insert into tbl_user values 

(\"$id\",\"$login\",\"$pass\",\"$email\",\"$argent\",\"$nom_chaine\",\"$news\")",$db_link) or die(mysql_error());
// CHAMPS SUPLEMENTAIRES, complétez la requête précédente en ajoutant les variables et en respectant l'ordre des colonnes de 

la table. Exemple :
// insert into membre values ($idnew,\"$id\",\"$pseudo_membre\",\"$passe_membre\",\"$email\",\"$ville\")
                                                                                                                              

                                                                                                                              

    	
// REDIRECTION VERS LA PAGE D'ENTREE DE L'ESPACE MEMBRE
echo "Merci, vous êtes bien enregistré. Vous pouvez dès à présent vous connecter !";
}
                                                                                                                              

                                                                                                                              

    
// DECONNEXION MYSQL
mysql_close($db_link);
                                                                                                                              

                                                                                                                              

    
break;
                                                                                                                              

                                                                                                                              

    
                                                                                                                              

                                                                                                                              

    
/*-----------------------------------------------------------------*/
/*	AFFICHAGE DU FORMULAIRE			*/
/*-----------------------------------------------------------------*/
                                                                                                                              

                                                                                                                              

    
default;
echo "	<h2>Nouveau membre</h2>
<form action=\"inscription.php\" method=\"post\">
<input type=\"hidden\" name=\"action\" value=\"add\">
Chosissez un pseudo<br><input type=\"text\" name=\"pseudo_membre\"><br>
Chosissez un mot de passe<br><input type=\"password\" name=\"passe_membre\"><br>
Adresse Email<br><input type=\"text\" name=\"email\"><br>
<input type=\"hidden\" name=\"argent\" value=\"300000\">
Choisissez un nom pour votre Chaine d'Hôtels<br><input type=\"text\" name=\"nom_chaine\"><br>
Si vous acceptez de recevoir des email de Mon Hôtel Virtuel cochez cette case. (Recommandé pour recevoir le mail qui vous 

indiquera l'ouverture officiel du jeu)<input type=\"checkbox\" name=\"news\" value=\"oui\">
<! -- CHAMPS SUPLEMENTAIRES, décommentez les 2 lignes suivantes -->
<!-- Votre email<br><input type=\"text\" name=\"email\"><br> -->
<!-- Ville<br><input type=\"text\" name=\"ville\"><br> -->
<input type=\"submit\" value=\"S'inscrire\">
</form>
<font face=\"Verdana\" size=\"2\"><a href=\"http://www.mon-hotel-virtuel.com/site2/login.php\">Se connecter</a></font>";
break;
}
?>
</center>
</font>
</body>
</html></center>

Posté : 09 août 2007, 16:38
par zeus
Mais oui, bien sûr, il t'as fallu 8mn pour enlever des tabs.
D'ailleurs, cette réponse, posté il y a maintenant plus 5mn, elle est très bien mise en forme ... tu as vu le nombre de tab et tu as vu que ton code est quasiment entièrement caché ?

Dans ton message d'erreur toujours, il t'es dit que PHP n'attendait pas "default". C'est donc qu'il y a une erreur juste avant ...

Posté : 09 août 2007, 16:44
par zeus
Tiens, je t'ai ré-indenté le code ...

Et là, si tu vois pas l'erreur, je peux plus rien pour toi (copie/colle dans ton navigateur)
require("config.php");
switch($action) {
	/*-----------------------------------------------------------------*/
        /*	AJOUT DANS MySQL			*/
        /*-----------------------------------------------------------------*/
        case "add";
		// CONNEXION A LA BASE DE DONNEE
		$db_link = @mysql_connect($sql_serveur,$sql_user,$sql_passwd);
		if(!$db_link) {
			echo "Connexion impossible à la base de données <b>$sql_bdd</b> sur le serveur <b>$sql_server</b><br>Vérifiez les paramètres du fichier conf_gastro.php"; 
			exit;
		}
		
		// TEST SUR LES VALEURS SAISIES
		if($login=="") {
			echo "Vous devez choisir un login<br><br><a href=\"javascript:window.history.back()\">Retour</a>";
			exit;
		}
		if($pass=="") {
			echo "Vous devez choisir un mot de passe<br><br><a href=\"javascript:window.history.back()\">Retour</a>";
			exit;
		}
		if($email=="") {
			echo "Vous devez entrer votre Adresse Email<br><br><a href=\"javascript:window.history.back()\">Retour</a>";
			exit;
		}
		if($nom_chaine=="") {
			echo "Vous devez choisir le nom de votre chaine<br><br><a href=\"javascript:window.history.back()\">Retour</a>";
			exit;
		}
		// CHAMPS SUPLEMENTAIRES, inspirez-vous des lignes suivantes. Pour qu'un champs soit facultatif, omettez la ligne.
		
		//if($email==""){echo "Vous n'avez pas saisi votre email<br><br><a href=\"javascript:window.history.back()\">Retour</a>";exit;}
		//if($ville==""){echo "Vous n'avez pas saisi la ville<br><br><a href=\"javascript:window.history.back()\">Retour</a>";exit;}
		    
		// ON VERIFIE SI CE PSEUDO EXISTE DEJA
		$requete = mysql_db_query($sql_bdd,"select login from tbl_user where pseudo=\"$login\"",$db_link) or die(mysql_error());
		$num=mysql_num_rows($requete);
		if($num!=0)
		{
			echo "Ce login existe déjà, veuillez en choisir un autre<br><br><a href=\"javascript:window.history.back()\">Retour</a><p>";
		}
		
		// ON VERIFIE SI LE NOM DE LA CHAINE EXISTE DEJA
		$requete=mysql_db_query($sql_bdd,"select nom_chaine from tbl_user where nom_chaine=\"$nom_chaine\"",$db_link) or die(mysql_error());
		$num=mysql_num_rows($requete);
		if($num!=0) {
			echo "Cette entreprise existe déjà, veuillez choisir un autre nom<br><br><a href=\"javascript:window.history.back()\">Retour</a>";
		}
		// ON VERIFIE SI L'ADRESSE EMAIL EXISTE DEJA
		$requete=mysql_db_query($sql_bdd,"select email from tbl_user where email=\"$email\"",$db_link) or die(mysql_error());
		$num=mysql_num_rows($requete);
		if($num!=0) {
			echo "Cette adresse email est déjà utilisée, veuillez saisir une autre<br><br><a href=\"javascript:window.history.back()\">Retour</a>";
		}
                
		//Envoi d'un mail de confirm
		$body="Bonjour $login,\n\nNous vous confirmons votre inscription sur Mon-Hôtel-Virtuel.com\nVeuillez ne pas perdre ce mail pour pourvoir vous identifier a nouveau\n\nVoici les informations que vous avez saisi:\n\nPseudo: $login\nMot de passe: $pass\nNom de votre Chaine d'Hôtels: $nom_chaine";
		mail("$login <$email>","Confirmation de l'inscription sur Mon Hôtel Virtuel",$body, "From: Mon Hôtel Virtuel <[email protected]>");
                                                                                                                              
		// INSERTION DANS LA TABLE 
		$requete=mysql_db_query($sql_bdd,"insert into tbl_user values (\"$id\",\"$login\",\"$pass\",\"$email\",\"$argent\",\"$nom_chaine\",\"$news\")",$db_link) or die(mysql_error());
		// CHAMPS SUPLEMENTAIRES, complétez la requête précédente en ajoutant les variables et en respectant l'ordre des colonnes de la table. Exemple :
		// insert into membre values ($idnew,\"$id\",\"$pseudo_membre\",\"$passe_membre\",\"$email\",\"$ville\")

		// REDIRECTION VERS LA PAGE D'ENTREE DE L'ESPACE MEMBRE
		echo "Merci, vous êtes bien enregistré. Vous pouvez dès à présent vous connecter !";
	}
    
// DECONNEXION MYSQL
mysql_close($db_link);

break;

Posté : 09 août 2007, 16:51
par benjam89
ben non dsl, je ne voi pas, car ce script, j'ai fait un copier/coller d'un de mes scripts d'inscription, et j'ai juste modifier les champs, donc je ne voit pas dut tout

Posté : 09 août 2007, 16:55
par zeus
:(

Si tu suis l'indentation, tu verras qu'il n'y a pas que le break est après l'accolade fermante du switch, de même pour la fermeture de la connexion MySql, alors que l'ouverture est dans le cas "add"

Posté : 09 août 2007, 17:02
par Ryle
Une autre erreur en vue également, rappel de la syntaxe d'un switch :
switch ($i) {
  case 0 :
    echo "i égale 0";
    break;
  case 1 :
    echo "i égale 1";
    break;
}