Erreur unexpected T_IF
Profil bloqué
-
Profil bloqué -
Profil bloqué -
Bonjour,
Je suis en train de coder un formulaire et j'ai créé une page php pour envoyer les données vers ma base de données.
On m'indique une erreur unexpected T_IF l.23 que je ne vois pas, et il semble qu'il y en ait d'autres, mais je ne vois pas, quelqu'un pourrait-il m'aider ?
Merci
Code html page formulairefourn.php
<html>
<head>
</head>
<Title>
Form fourn
</title>
<h2>Formulaire d'enregistrement</h2>
</br>
<!-- Formulaire html--rajouter condition taille mini password et champs obligatoires-->
<form name="creation fourn" method="post" action="Compte cortrad.php">
<label>
Saisissez votre nom*
</br>
<input type="text" name="nom"/>
</br>
</br>
</label>
<label>
Saisissez votre prénom*
</br>
<input type="text" name="prenom"/>
</br>
</br>
</label>
<label>
Saisissez votre login*
</br>
<input type="text" name="login"/>
</br>
</br>
</label>
<label>
Choisissez votre mot de passe*
</br>
<input type="password" name="mot de passe"/>
</br>
</br>
</label>
<label>
Veuillez ressaisir votre mot de passe*
<input type="password" name="mot de passe"/>
</br>
</br>
</label>
<label>
Saisissez votre ville
<input type="text" name="ville"/>
</br>
</br>
</label>
<label>
Saisissez votre pays
<input type="text" name="pays"/>
</br>
</br>
</label>
<label>
Saisissez votre adresse email*
<input type="text" name="email"/>
</br>
</br>
</label>
<label>
Veuillez ressaisir votre adresse email*
<input type="text" name="email"/>
</br>
</br>
</label>
<label>
Veuillez saisir votre numéro de téléphone*
<input type="text" name="telephone"/>
</br>
</br>
</label>
<label>
Veuillez saisir les langues que vous proposez
</br></br>
Langue maternelle*
<input type="text" name="langue maternelle"/>
</br></br>
Autres*
<input type="text" name="langue1"/>
</br></br>
<input type="text" name="langue2"/>
</br></br>
<input type="text" name="langue3"/>
</br></br>
<input type="text" name="langue4"/>
</br>
</br>
</label>
<label>
Veuillez indiquer vos tarifs (ou une fourchette de tarifs)
</br>
Par page
<input type="text" value="€" name="tarif page"/>
</br>
Par mot
<input type="text" value="€" name="tarif mot"/>
</br>
</br>
</label>
<label>
Votre annonce
<input type="textarea" name="annonce"/>
</label>
<label>
<input type="submit" name="valider"/>
</label>
</form>
https://forums.commentcamarche.net/forum/
</body>
</html>
<HTML>
<HEAD>
<TITLE>Votre Compte traducteur/correcteur</TITLE>
</HEAD>
<BODY>
<?php
$host='localhost';
$user='root';
$pass='';
$bdd='traduction';
//Connexion base
mysql_connect($host,$user,$pass) or die ('Erreur, impossible de se connecter');
mysql_select_db ($bdd) or die ('Erreur, impossible de se connecter')
if (isset ($_POST['nom']) and isset ($_POST ['prenom']) and isset ($_POST['login']) and isset ($_POST['mot de passe']) and isset ($_POST['telephone']) and isset ($_POST['email']) and isset ($_POST['langue maternelle']) and isset ($_POST['langue1']));
{
$nom = mysql_real_escape_string(htmlspecialchars($_POST['nom']));
$prenom = mysql_real_escape_string(htmlspecialchars($_POST['prenom']));
$login = mysql_real_escape_string(htmlspecialchars($_POST['login']));
$password = mysql_real_escape_string(htmlspecialchars($_POST['mot de passe']));
$ville = mysql_real_escape_string(htmlspecialchars($_POST['ville']));
$pays = mysql_real_escape_string(htmlspecialchars($_POST['pays']));
$tel = ($_POST['telephone']);
$email = mysql_real_escape_string(htmlspecialchars($_POST['email']));
$tarif_page = mysql_real_escape_string(htmlspecialchars($_POST['tarif page']));
$tarif_mot = mysql_real_escape_string(htmlspecialchars($_POST['tarif mot']));
$annonce = nl2br($_POST['annonce']);
$languemat = mysql_real_escape_string(htmlspecialchars($_POST['langue maternelle']));
$langue1 = mysql_real_escape_string(htmlspecialchars($_POST['langue1']));
$langue2 = mysql_real_escape_string(htmlspecialchars($_POST['langue2']));
$langue3 = mysql_real_escape_string(htmlspecialchars($_POST['langue3']));
$langue4 = mysql_real_escape_string(htmlspecialchars($_POST['langue4']));
}
or die ('Erreur, impossible de se connecter')
//vérification champs bien remplis
mysql_query("insert into cortrad (id_cortrad,nom,prenom,login,password,ville,pays,tel,email,tarif_page,tarif_mot,annonce,languemat,langue1,langue2,langue3,langue4))
VALUES ('','$nom','$prenom','$login','$password','$ville','$pays','$tel','$email','$tarif_page','$tarif_mot','$annonce','$languemat','$langue1','$langue2','$langue3','$langue4')";
mysql_close ($connect)
?>
Je suis en train de coder un formulaire et j'ai créé une page php pour envoyer les données vers ma base de données.
On m'indique une erreur unexpected T_IF l.23 que je ne vois pas, et il semble qu'il y en ait d'autres, mais je ne vois pas, quelqu'un pourrait-il m'aider ?
Merci
Code html page formulairefourn.php
<html>
<head>
</head>
<Title>
Form fourn
</title>
<h2>Formulaire d'enregistrement</h2>
</br>
<!-- Formulaire html--rajouter condition taille mini password et champs obligatoires-->
<form name="creation fourn" method="post" action="Compte cortrad.php">
<label>
Saisissez votre nom*
</br>
<input type="text" name="nom"/>
</br>
</br>
</label>
<label>
Saisissez votre prénom*
</br>
<input type="text" name="prenom"/>
</br>
</br>
</label>
<label>
Saisissez votre login*
</br>
<input type="text" name="login"/>
</br>
</br>
</label>
<label>
Choisissez votre mot de passe*
</br>
<input type="password" name="mot de passe"/>
</br>
</br>
</label>
<label>
Veuillez ressaisir votre mot de passe*
<input type="password" name="mot de passe"/>
</br>
</br>
</label>
<label>
Saisissez votre ville
<input type="text" name="ville"/>
</br>
</br>
</label>
<label>
Saisissez votre pays
<input type="text" name="pays"/>
</br>
</br>
</label>
<label>
Saisissez votre adresse email*
<input type="text" name="email"/>
</br>
</br>
</label>
<label>
Veuillez ressaisir votre adresse email*
<input type="text" name="email"/>
</br>
</br>
</label>
<label>
Veuillez saisir votre numéro de téléphone*
<input type="text" name="telephone"/>
</br>
</br>
</label>
<label>
Veuillez saisir les langues que vous proposez
</br></br>
Langue maternelle*
<input type="text" name="langue maternelle"/>
</br></br>
Autres*
<input type="text" name="langue1"/>
</br></br>
<input type="text" name="langue2"/>
</br></br>
<input type="text" name="langue3"/>
</br></br>
<input type="text" name="langue4"/>
</br>
</br>
</label>
<label>
Veuillez indiquer vos tarifs (ou une fourchette de tarifs)
</br>
Par page
<input type="text" value="€" name="tarif page"/>
</br>
Par mot
<input type="text" value="€" name="tarif mot"/>
</br>
</br>
</label>
<label>
Votre annonce
<input type="textarea" name="annonce"/>
</label>
<label>
<input type="submit" name="valider"/>
</label>
</form>
https://forums.commentcamarche.net/forum/
</body>
</html>
<HTML>
<HEAD>
<TITLE>Votre Compte traducteur/correcteur</TITLE>
</HEAD>
<BODY>
<?php
$host='localhost';
$user='root';
$pass='';
$bdd='traduction';
//Connexion base
mysql_connect($host,$user,$pass) or die ('Erreur, impossible de se connecter');
mysql_select_db ($bdd) or die ('Erreur, impossible de se connecter')
if (isset ($_POST['nom']) and isset ($_POST ['prenom']) and isset ($_POST['login']) and isset ($_POST['mot de passe']) and isset ($_POST['telephone']) and isset ($_POST['email']) and isset ($_POST['langue maternelle']) and isset ($_POST['langue1']));
{
$nom = mysql_real_escape_string(htmlspecialchars($_POST['nom']));
$prenom = mysql_real_escape_string(htmlspecialchars($_POST['prenom']));
$login = mysql_real_escape_string(htmlspecialchars($_POST['login']));
$password = mysql_real_escape_string(htmlspecialchars($_POST['mot de passe']));
$ville = mysql_real_escape_string(htmlspecialchars($_POST['ville']));
$pays = mysql_real_escape_string(htmlspecialchars($_POST['pays']));
$tel = ($_POST['telephone']);
$email = mysql_real_escape_string(htmlspecialchars($_POST['email']));
$tarif_page = mysql_real_escape_string(htmlspecialchars($_POST['tarif page']));
$tarif_mot = mysql_real_escape_string(htmlspecialchars($_POST['tarif mot']));
$annonce = nl2br($_POST['annonce']);
$languemat = mysql_real_escape_string(htmlspecialchars($_POST['langue maternelle']));
$langue1 = mysql_real_escape_string(htmlspecialchars($_POST['langue1']));
$langue2 = mysql_real_escape_string(htmlspecialchars($_POST['langue2']));
$langue3 = mysql_real_escape_string(htmlspecialchars($_POST['langue3']));
$langue4 = mysql_real_escape_string(htmlspecialchars($_POST['langue4']));
}
or die ('Erreur, impossible de se connecter')
//vérification champs bien remplis
mysql_query("insert into cortrad (id_cortrad,nom,prenom,login,password,ville,pays,tel,email,tarif_page,tarif_mot,annonce,languemat,langue1,langue2,langue3,langue4))
VALUES ('','$nom','$prenom','$login','$password','$ville','$pays','$tel','$email','$tarif_page','$tarif_mot','$annonce','$languemat','$langue1','$langue2','$langue3','$langue4')";
mysql_close ($connect)
?>
A voir également:
- Erreur unexpected T_IF
- Erreur 3000 france tv - Forum Lecteurs et supports vidéo
- Erreur upes 1025 - Forum Téléviseurs
- Erreur 0x80070643 - Accueil - Windows
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- Code erreur f3500-31 ✓ - Forum Bbox Bouygues
5 réponses
Salut,
comprends-tu tes messages d'erreur ? :)
Dans le cas présent, "unexpected T_IF l.23" siginfie "un if inattendu à la ligne 23"
Quand il te dit "inattendu", en général le problème c'est que t'as oublié de fermer quelque chose plus haut dans le code (parenthèse, accolade, guillemet, etc).
Pas besoin de chercher plus loin : regarde la ligne juste au-dessus (j'ai pas les numéros de ligne mais je suppose que c'est ça), il manque un point-virgule ;)
Pour le reste, tu as un or die(...) après ton bloc if, je crois pas que ça marche (essaye avec else), et il manque aussi un point-virgule ^^
comprends-tu tes messages d'erreur ? :)
Dans le cas présent, "unexpected T_IF l.23" siginfie "un if inattendu à la ligne 23"
Quand il te dit "inattendu", en général le problème c'est que t'as oublié de fermer quelque chose plus haut dans le code (parenthèse, accolade, guillemet, etc).
Pas besoin de chercher plus loin : regarde la ligne juste au-dessus (j'ai pas les numéros de ligne mais je suppose que c'est ça), il manque un point-virgule ;)
Pour le reste, tu as un or die(...) après ton bloc if, je crois pas que ça marche (essaye avec else), et il manque aussi un point-virgule ^^
Il s'agit du point virgule en trop à la fin de la ligne du "if", juste avant l'ouverture d'accolade.
if (isset ($_POST['nom']) and isset ($_POST ['prenom']) and isset ($_POST['login']) and isset ($_POST['mot de passe']) and isset ($_POST['telephone']) and isset ($_POST['email']) and isset ($_POST['langue maternelle']) and isset ($_POST['langue1']));
{
$nom = mysql_real_escape_string(htmlspecialchars($_POST['nom']));
$prenom = mysql_real_escape_string(htmlspecialchars($_POST['prenom']));
$login = mysql_real_escape_string(htmlspecialchars($_POST['login']));
$password = mysql_real_escape_string(htmlspecialchars($_POST['mot de passe']));
$ville = mysql_real_escape_string(htmlspecialchars($_POST['ville']));
$pays = mysql_real_escape_string(htmlspecialchars($_POST['pays']));
$tel = ($_POST['telephone']);
$email = mysql_real_escape_string(htmlspecialchars($_POST['email']));
$tarif_page = mysql_real_escape_string(htmlspecialchars($_POST['tarif page']));
$tarif_mot = mysql_real_escape_string(htmlspecialchars($_POST['tarif mot']));
$annonce = nl2br($_POST['annonce']);
$languemat = mysql_real_escape_string(htmlspecialchars($_POST['langue maternelle']));
$langue1 = mysql_real_escape_string(htmlspecialchars($_POST['langue1']));
$langue2 = mysql_real_escape_string(htmlspecialchars($_POST['langue2']));
$langue3 = mysql_real_escape_string(htmlspecialchars($_POST['langue3']));
$langue4 = mysql_real_escape_string(htmlspecialchars($_POST['langue4']));
}
if (isset ($_POST['nom']) and isset ($_POST ['prenom']) and isset ($_POST['login']) and isset ($_POST['mot de passe']) and isset ($_POST['telephone']) and isset ($_POST['email']) and isset ($_POST['langue maternelle']) and isset ($_POST['langue1']));
{
$nom = mysql_real_escape_string(htmlspecialchars($_POST['nom']));
$prenom = mysql_real_escape_string(htmlspecialchars($_POST['prenom']));
$login = mysql_real_escape_string(htmlspecialchars($_POST['login']));
$password = mysql_real_escape_string(htmlspecialchars($_POST['mot de passe']));
$ville = mysql_real_escape_string(htmlspecialchars($_POST['ville']));
$pays = mysql_real_escape_string(htmlspecialchars($_POST['pays']));
$tel = ($_POST['telephone']);
$email = mysql_real_escape_string(htmlspecialchars($_POST['email']));
$tarif_page = mysql_real_escape_string(htmlspecialchars($_POST['tarif page']));
$tarif_mot = mysql_real_escape_string(htmlspecialchars($_POST['tarif mot']));
$annonce = nl2br($_POST['annonce']);
$languemat = mysql_real_escape_string(htmlspecialchars($_POST['langue maternelle']));
$langue1 = mysql_real_escape_string(htmlspecialchars($_POST['langue1']));
$langue2 = mysql_real_escape_string(htmlspecialchars($_POST['langue2']));
$langue3 = mysql_real_escape_string(htmlspecialchars($_POST['langue3']));
$langue4 = mysql_real_escape_string(htmlspecialchars($_POST['langue4']));
}
Merci de vos réponses :)
Par contre à cet endroit là il me trouve une autre erreur :x Ca fait des heures que je suis dessus et j'ai débuté réellement le php il y a quelques heures, donc désolée si je passe facilement à côté de choses qui je l'espère me paraîtront évidentes d'ici peu ^^
mysql_query("insert into cortrad (id_cortrad,nom,prenom,login,password,ville,pays,tel,email,tarif_page,tarif_mot,annonce,languemat,langue1,langue2,langue3,langue4))
VALUES ('','$nom','$prenom','$login','$password','$ville','$pays','$tel','$email','$tarif_page','$tarif_mot','$annonce','$languemat','$langue1','$langue2','$langue3','$langue4')"
//Fermeture de la base
mysql_close();
Il me dit "Parse error: parse error, unexpected T_STRING in C:\Program Files\EasyPHP 2.0b1\www\Site traduction\Compte cortrad.php on line 53" et la ligne 53 correspond à la fermeture de la base... et je ne vois pas d'erreur de syntaxe qui me semblerait flagrante.
Dans le même temps, lorsque je remplis le formulaire html, je semble ne pas connecter à la base, je ne comprends pas pourquoi ><
Par contre à cet endroit là il me trouve une autre erreur :x Ca fait des heures que je suis dessus et j'ai débuté réellement le php il y a quelques heures, donc désolée si je passe facilement à côté de choses qui je l'espère me paraîtront évidentes d'ici peu ^^
mysql_query("insert into cortrad (id_cortrad,nom,prenom,login,password,ville,pays,tel,email,tarif_page,tarif_mot,annonce,languemat,langue1,langue2,langue3,langue4))
VALUES ('','$nom','$prenom','$login','$password','$ville','$pays','$tel','$email','$tarif_page','$tarif_mot','$annonce','$languemat','$langue1','$langue2','$langue3','$langue4')"
//Fermeture de la base
mysql_close();
Il me dit "Parse error: parse error, unexpected T_STRING in C:\Program Files\EasyPHP 2.0b1\www\Site traduction\Compte cortrad.php on line 53" et la ligne 53 correspond à la fermeture de la base... et je ne vois pas d'erreur de syntaxe qui me semblerait flagrante.
Dans le même temps, lorsque je remplis le formulaire html, je semble ne pas connecter à la base, je ne comprends pas pourquoi ><
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Manque un point-virgule, encore, et puis il y a une parenthèse baladeuse dans ta fonction mysql_query.
Je l'ai réécrite pour toi :
Utilise la balise <code> sur ce forum si tu as encore des problèmes. En ce qui concerne la connexion à ta base, remplace tes or die("erreur de connexion") par des or die(mysql_error())> et tu pourras voir tes erreurs mysql. Reporte-les ici si tu n'y arrives pas toute seule.
Bon courage ;)
Je l'ai réécrite pour toi :
mysql_query(
"insert into cortrad (id_cortrad,nom,prenom,login,password,ville,pays,tel,email,tarif_page,tarif_mot,annonce,languemat,langue1,langue2,langue3,langue4)
VALUES ('','$nom','$prenom','$login','$password','$ville','$pays','$tel','$email','$tarif_page','$tarif_mot','$annonce','$languemat','$langue1','$langue2','$langue3','$langue4')");
Utilise la balise <code> sur ce forum si tu as encore des problèmes. En ce qui concerne la connexion à ta base, remplace tes or die("erreur de connexion") par des or die(mysql_error())> et tu pourras voir tes erreurs mysql. Reporte-les ici si tu n'y arrives pas toute seule.
Bon courage ;)