Erreur dans mon script php

[Résolu/Fermé]
Signaler
-
Messages postés
422
Date d'inscription
mercredi 24 septembre 2008
Statut
Membre
Dernière intervention
30 mai 2015
-
Bonjour tout le monde ;)
J'ai un problème de syntaxe dans mon script (je crois que j'ai tellement passé de temps dessus que je ne vois plus rien..) ça dit:
Parse error: syntax error, unexpected T_IF in /home/a9276577/public_html/data/questionnaire1.php on line 3

je viens d'ajouter les ''elseif'' dans ma série de ''if'' mais ça n'a rien changé...
Voici mon script:(il s'agit d'une page de résultats pour un quiz)
<?
php
if(isset($_POST['question1']))
$question1 = $_POST['question1'];}
elseif(isset($_POST['question2_0']))
{$question2_0 = $_POST['question2_0'];}
elseif(isset($_POST['question2_1']))
{$question2_1 = $_POST['question2_1'];}
elseif(isset($_POST['question2_2']))
{$question2_2 = $_POST['question2_2'];}
elseif(isset($_POST['question2_3']))
{$question2_3 = $_POST['question2_3'];}
elseif(isset($_POST['question3']))
{$question3 = $_POST['question3'];}
elseif(isset($_POST['question4_0']))
{$question4_0 = $_POST['question4_0'];}
elseif(isset($_POST['question4_1']))
{$question4_1 = $_POST['question4_1'];}
elseif(isset($_POST['question4_2']))
{$question4_2 = $_POST['question4_2'];}
elseif(isset($_POST['question4_3']))
{$question4_3 = $_POST['question4_3'];}
elseif(isset($_POST['question5']))
{$question5 = $_POST['question5'];}
elseif(isset($_POST['question6_0']))
{$question6_0= $_POST['question6_0'];}
elseif(isset($_POST['question6_1']))
{$question6_1 = $_POST['question6_1'];}
else(isset($_POST['question6_2']))
{$question6_2 = $_POST['question6_2'];}
?>

<? php
if($question1=="sage"){$points = $points + 0;}
if($question1=="guerrier"){$points = $points + 0;}
if($question1=="artisan"){$points = $points + 0;}
if($question1=="je ne sais pas"){$points = $points + 0;}
?>
<? php
if($question2_0=="clairvoyance"){$points = $points + 360;}
if($question2_0=="nature"){$points = $points + 340;}
if($question2_0=="méditation"){$points = $points + 320;}
if($question2_0=="intuition"){$points = $points + 300;}
?>
<? php
if($question2_1=="vif"){$points = $points + 280;}
if($question2_1=="fort"){$points = $points + 260;}
if($question2_1=="adroit"){$points = $points + 240;}
if($question2_1=="doué"){$points = $points + 220;}
if($question2_1=="honorable"){$points = $points + 200;}
?>
<? php
if($question2_2=="fromager"){$points = $points + 180;}
if($question2_2=="ébéniste"){$points = $points + 100;}
?>
<? php
if($question2_3=="il me faudrait plus de temps pour y réfléchir"){$points = $points + 20;}
if($question2_3=="je ne sais pas trop ce que je désire"){$points = $points + 0;}
?>
<? php
if($question3=="la spiritualité"){$points = $points + 20;}
if($question3=="les arts"){$points = $points + 240;}
if($question3=="la nature"){$points = $points + 200;}
if($question3=="la vie en société"){$points = $points + 220;}
?>
<? php
if($question4_1=="les textes religieux"){$points = $points + 120;}
if($question4_1=="le destin"){$points = $points + 140;}
if($question4_1=="l'Illumination"){$points = $points + 100;}
if($question4_1=="la manifestation de Dieu"){$points = $points + 320;}
if($question4_1=="les rêves"){$points = $points + 300;}
?>
<? php
if($question4_2=="la musique"){$points = $points + 340;}
if($question4_2=="le chant"){$points = $points + 320;}
if($question4_2=="l'orfèverie"){$points = $points + 300;}
if($question4_2=="l'ébénisterie"){$points = $points + 0;}
?>
<? php
if($question4_3=="la mer"){$points = $points + 280;}
if($question4_3=="la terre"){$points = $points + 360;}
?>
<? php
if($question4_3=="la politique"){$points = $points + 260;}
if($question4_3=="le droit des humains"){$points = $points + 100;}
?>
<? php
if($question5=="la recherche de l'équilibre"){$points = $points + 0;}
if($question5=="les émotions"){$points = $points + 0;}
if($question5=="la relation avec les autres"){$points = $points + 0;}
if($question5=="faire preuve de courage"){$points = $points + 260;}
?>
<? php
if($question6_0=="je suis fragile"){$points = $points + 360;}
if($question6_0=="je suis serein(e)"){$points = $points + 320;}
if($question6_0=="je manque de confiance"){$points = $points + 0;}
if($question6_0=="je sais ce que je veux"){$points = $points + 200;}
?>
<? php
if($question6_1=="je suis une personne sensible"){$points = $points + 280;}
if($question6_1=="je suis une personne spontanée"){$points = $points + 20;}
if($question6_1=="je suis une personne amoureuse"){$points = $points + 240;}
if($question6_1=="je suis une personne énergique"){$points = $points + 220;}
?>
<? php
if($question6_2=="démontrer de la bonté envers eux"){$points = $points + 120;}
if($question6_2=="leur apprendre des choses"){$points = $points + 340;}
if($question6_2=="leur être fidèle"){$points = $points + 100;}
if($question6_2=="être à leur écoute"){$points = $points + 300;}
?>

<? php
if($points<40)
{echo'waguey';}
else{echo'Kys';}
?>

MERCI!!!!!

9 réponses

Messages postés
422
Date d'inscription
mercredi 24 septembre 2008
Statut
Membre
Dernière intervention
30 mai 2015
67
enlève "}" de la ligne 3; ou alors mets "{" et "}"
merci :)
par contre j'ai toujours le meme message derreur...
Messages postés
5358
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
892
if(isset($_POST['question1'])){
	$question1 = $_POST['question1'];}
}elseif(isset($_POST['question2_0'])){
	$question2_0 = $_POST['question2_0'];
}elseif(isset($_POST['question2_1'])){
	$question2_1 = $_POST['question2_1'];
}
etc...


très bizarre comme code, ainsi on ne peut répondre qu'à une seule question ?
Messages postés
422
Date d'inscription
mercredi 24 septembre 2008
Statut
Membre
Dernière intervention
30 mai 2015
67
il faut que ton début ressemble à ceci (retours à la lignes indentiques)
<?php
if(isset($_POST['question1']))
$question1 = $_POST['question1'];
merci de m'avoir répondu aussi rapidement, votre aide est grandement appréciée!

en fait cette partie ''isset'' de mon code devrait servir à tester si les variables existent (si la question a été répondue...)
est-ce inutile à mon script??(c'est la première fois que je fais du php..)
Messages postés
5358
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
892
en testant ainsi ça ne peut pas fonctionner, car

if(isset($_POST['question1'])){
$question1 = $_POST['question1'];}
}elseif(isset($_POST['question2_0'])){


a la premiere ligne on teste si reponse a la question 1 si oui on irra pas dans le elseif donc dans aucun des autres

donc mets seulement des if et pas de elseif

<?php  //tu avais un espace entre ? et php il n'en faut pas
if(isset($_POST['question1'])){$question1 = $_POST['question1'];}
if(isset($_POST['question2_0'])){$question2_0 = $_POST['question2_0'];}
if(isset($_POST['question2_1'])){$question2_1 = $_POST['question2_1'];}
if(isset($_POST['question2_2'])){$question2_2 = $_POST['question2_2'];}
if(isset($_POST['question2_3'])){$question2_3 = $_POST['question2_3'];}
if(isset($_POST['question3'])){$question3 = $_POST['question3'];}
if(isset($_POST['question4_0'])){$question4_0 = $_POST['question4_0'];}
if(isset($_POST['question4_1'])){$question4_1 = $_POST['question4_1'];}
if(isset($_POST['question4_2'])){$question4_2 = $_POST['question4_2'];}
if(isset($_POST['question4_3'])){$question4_3 = $_POST['question4_3'];}
if(isset($_POST['question5'])){$question5 = $_POST['question5'];}
if(isset($_POST['question6_0'])){$question6_0= $_POST['question6_0'];}
if(isset($_POST['question6_1'])){$question6_1 = $_POST['question6_1'];}
if(isset($_POST['question6_2'])){$question6_2 = $_POST['question6_2'];}

//inutile d'ouvrir et fermer php a chaque fois

//ensuite tu addition a la variable $points mais tu ne lui a pas mis de valeur initiale
//init
$points=0;
//par contre ici si une seule réponse possible autorisée tu dois mettre des elseif
if($question1=="sage"){$points = $points + 0;} //une autre solution: if($question1=="sage"){$points += 0;}
elseif($question1=="guerrier"){$points = $points + 0;}
elseif($question1=="artisan"){$points = $points + 0;}
elseif($question1=="je ne sais pas"){$points = $points + 0;}

//idem partout

if($question2_0=="clairvoyance"){$points = $points + 360;}
if($question2_0=="nature"){$points = $points + 340;}
if($question2_0=="méditation"){$points = $points + 320;}
if($question2_0=="intuition"){$points = $points + 300;}

if($question2_1=="vif"){$points = $points + 280;}
if($question2_1=="fort"){$points = $points + 260;}
if($question2_1=="adroit"){$points = $points + 240;}
if($question2_1=="doué"){$points = $points + 220;}
if($question2_1=="honorable"){$points = $points + 200;}

if($question2_2=="fromager"){$points = $points + 180;}
if($question2_2=="ébéniste"){$points = $points + 100;}

if($question2_3=="il me faudrait plus de temps pour y réfléchir"){$points = $points + 20;}
if($question2_3=="je ne sais pas trop ce que je désire"){$points = $points + 0;}

if($question3=="la spiritualité"){$points = $points + 20;}
if($question3=="les arts"){$points = $points + 240;}
if($question3=="la nature"){$points = $points + 200;}
if($question3=="la vie en société"){$points = $points + 220;}

if($question4_1=="les textes religieux"){$points = $points + 120;}
if($question4_1=="le destin"){$points = $points + 140;}
if($question4_1=="l'Illumination"){$points = $points + 100;}
if($question4_1=="la manifestation de Dieu"){$points = $points + 320;}
if($question4_1=="les rêves"){$points = $points + 300;}

if($question4_2=="la musique"){$points = $points + 340;}
if($question4_2=="le chant"){$points = $points + 320;}
if($question4_2=="l'orfèverie"){$points = $points + 300;}
if($question4_2=="l'ébénisterie"){$points = $points + 0;}

if($question4_3=="la mer"){$points = $points + 280;}
if($question4_3=="la terre"){$points = $points + 360;}

if($question4_3=="la politique"){$points = $points + 260;}
if($question4_3=="le droit des humains"){$points = $points + 100;}

if($question5=="la recherche de l'équilibre"){$points = $points + 0;}
if($question5=="les émotions"){$points = $points + 0;}
if($question5=="la relation avec les autres"){$points = $points + 0;}
if($question5=="faire preuve de courage"){$points = $points + 260;}

if($question6_0=="je suis fragile"){$points = $points + 360;}
if($question6_0=="je suis serein(e)"){$points = $points + 320;}
if($question6_0=="je manque de confiance"){$points = $points + 0;}
if($question6_0=="je sais ce que je veux"){$points = $points + 200;}

if($question6_1=="je suis une personne sensible"){$points = $points + 280;}
if($question6_1=="je suis une personne spontanée"){$points = $points + 20;}
if($question6_1=="je suis une personne amoureuse"){$points = $points + 240;}
if($question6_1=="je suis une personne énergique"){$points = $points + 220;}

if($question6_2=="démontrer de la bonté envers eux"){$points = $points + 120;}
if($question6_2=="leur apprendre des choses"){$points = $points + 340;}
if($question6_2=="leur être fidèle"){$points = $points + 100;}
if($question6_2=="être à leur écoute"){$points = $points + 300;}

if($points<40){
	echo'waguey';
}else{
	echo'Kys';
}
?> 
Salut !
Merci a toi pour ces informations détaillées et claires :)

J'ai apporté les modifications suggérées, et j'ai pourtant le même message d'erreur grrr

<?
php
if(isset($_POST['question1'])){$question1 = $_POST['question1'];}
if(isset($_POST['question2_0'])){$question2_0 = $_POST['question2_0'];}
if(isset($_POST['question2_1'])){$question2_1 = $_POST['question2_1'];}
if(isset($_POST['question2_2'])){$question2_2 = $_POST['question2_2'];}
if(isset($_POST['question2_3'])){$question2_3 = $_POST['question2_3'];}
if(isset($_POST['question3'])){$question3 = $_POST['question3'];}
if(isset($_POST['question4_0'])){$question4_0 = $_POST['question4_0'];}
if(isset($_POST['question4_1'])){$question4_1 = $_POST['question4_1'];}
if(isset($_POST['question4_2'])){$question4_2 = $_POST['question4_2'];}
if(isset($_POST['question4_3'])){$question4_3 = $_POST['question4_3'];}
if(isset($_POST['question5'])){$question5 = $_POST['question5'];}
if(isset($_POST['question6_0'])){$question6_0= $_POST['question6_0'];}
if(isset($_POST['question6_1'])){$question6_1 = $_POST['question6_1'];}
if(isset($_POST['question6_2'])){$question6_2 = $_POST['question6_2'];}

$points=0;

if($question1=="sage"){$points += 0;}
elseif($question1=="guerrier"){$points += 0;}
elseif($question1=="artisan"){$points += 0;}
elseif($question1=="je ne sais pas"){$points += 0;}

if($question2_0=="clairvoyance"){$points = $points + 360;}
elseif($question2_0=="nature"){$points = $points + 340;}
elseif($question2_0=="méditation"){$points = $points + 320;}
elseif($question2_0=="intuition"){$points = $points + 300;}

if($question2_1=="vif"){$points = $points + 280;}
elseif($question2_1=="fort"){$points = $points + 260;}
elseif($question2_1=="adroit"){$points = $points + 240;}
elseif($question2_1=="doué"){$points = $points + 220;}
elseif($question2_1=="honorable"){$points = $points + 200;}

if($question2_2=="fromager"){$points = $points + 180;}
elseif($question2_2=="ébéniste"){$points = $points + 100;}

if($question2_3=="il me faudrait plus de temps pour y réfléchir"){$points = $points + 20;}
elseif($question2_3=="je ne sais pas trop ce que je désire"){$points += 0;}

if($question3=="la spiritualité"){$points = $points + 20;}
elseif($question3=="les arts"){$points = $points + 240;}
elseif($question3=="la nature"){$points = $points + 200;}
elseif($question3=="la vie en société"){$points = $points + 220;}

if($question4_1=="les textes religieux"){$points = $points + 120;}
elseif($question4_1=="le destin"){$points = $points + 140;}
elseif($question4_1=="l'Illumination"){$points = $points + 100;}
elseif($question4_1=="la manifestation de Dieu"){$points = $points + 320;}
elseif($question4_1=="les rêves"){$points = $points + 300;}

if($question4_2=="la musique"){$points = $points + 340;}
elseif($question4_2=="le chant"){$points = $points + 320;}
elseif($question4_2=="l'orfèverie"){$points = $points + 300;}
elseif($question4_2=="l'ébénisterie"){$points += 0;}

if($question4_3=="la mer"){$points = $points + 280;}
elseif($question4_3=="la terre"){$points = $points + 360;}

if($question4_3=="la politique"){$points = $points + 260;}
elseif($question4_3=="le droit des humains"){$points = $points + 100;}

if($question5=="la recherche de l'équilibre"){$points += 0;}
elseif($question5=="les émotions"){$points += 0;}
elseif($question5=="la relation avec les autres"){$points += 0;}
elseif($question5=="faire preuve de courage"){$points = $points + 260;}

if($question6_0=="je suis fragile"){$points = $points + 360;}
elseif($question6_0=="je suis serein(e)"){$points = $points + 320;}
elseif($question6_0=="je manque de confiance"){$points += 0;}
elseif($question6_0=="je sais ce que je veux"){$points = $points + 200;}

if($question6_1=="je suis une personne sensible"){$points = $points + 280;}
elseif($question6_1=="je suis une personne spontanée"){$points = $points + 20;}
elseif($question6_1=="je suis une personne amoureuse"){$points = $points + 240;}
elseif($question6_1=="je suis une personne énergique"){$points = $points + 220;}

if($question6_2=="démontrer de la bonté envers eux"){$points = $points + 120;}
elseif($question6_2=="leur apprendre des choses"){$points = $points + 340;}
elseif($question6_2=="leur être fidèle"){$points = $points + 100;}
elseif($question6_2=="être à leur écoute"){$points = $points + 300;}

if($points<40)
{echo'waguey';}
elseif($points>40 AND $points<=210)
{echo'kah';}
elseif($points>210 AND $points<=330)
{echo'Trimai';}
elseif($points>330 AND $points<=520)
{echo'houma';}
elseif($points>520 AND $points<=630)
{echo'Seghpaï';}
elseif($points>630 AND $points<=690)
{echo'Seneich';}
elseif($points>690 AND $points<=750)
{echo'Nattan';}
elseif($points>750 AND $points<=810)
{echo'Chevalier';}
elseif($points>810 AND $points<=870)
{echo'Kapy';}
elseif($points>870 AND $points<=930)
{echo'Sorcier';}
elseif($points>930 AND $points<=1000)
{echo'Karashan';}
elseif($points>1000 AND $points<=1030)
{echo'Noki';}
else{echo'Kys';}
?>

alors, une idée?
Messages postés
422
Date d'inscription
mercredi 24 septembre 2008
Statut
Membre
Dernière intervention
30 mai 2015
67
j'en déduis que le problème de l'erreur à la ligne 3 est résolu !?

concernant la construction de ton script:
1) écris <?php au tout début et ?> à la toute fin et ça suffit, pas besoin d'ouvrir et de fermer des balises php tout le temps.
2) ton 1er bloc d'évaluation, évalue des conditions mutuellement exclusives: si une condition est vérifiée aucune autre condition n'est évaluée... est-ce bien cela que tu veux faire? il me semble que non...
3) pour incrémenter une variable il éxiste une écriture plus condensée: points += 100; est synonyme de points = points + 100;
4) if ($questionX == "blabla") points += 0; ceci est inutile!
5) je pense qu'il te faut revoir ton formulaire html pour récupérer des INTEGERs plutôt que des STRINGs: if ($questionX == 1) $points += 100; c-est-à-dire d'avoir en html ceci: <select value="1">méditation</select>
en fait non, j'ai toujours le même message qui s'affiche......
merci tout de même pour les conseils;

<?
php
if(isset($_POST['question1'])){$question1 = $_POST['question1'];}
if(isset($_POST['question2_0'])){$question2_0 = $_POST['question2_0'];}
if(isset($_POST['question2_1'])){$question2_1 = $_POST['question2_1'];}
if(isset($_POST['question2_2'])){$question2_2 = $_POST['question2_2'];}
if(isset($_POST['question2_3'])){$question2_3 = $_POST['question2_3'];}
if(isset($_POST['question3'])){$question3 = $_POST['question3'];}
if(isset($_POST['question4_0'])){$question4_0 = $_POST['question4_0'];}
if(isset($_POST['question4_1'])){$question4_1 = $_POST['question4_1'];}
if(isset($_POST['question4_2'])){$question4_2 = $_POST['question4_2'];}
if(isset($_POST['question4_3'])){$question4_3 = $_POST['question4_3'];}
if(isset($_POST['question5'])){$question5 = $_POST['question5'];}
if(isset($_POST['question6_0'])){$question6_0= $_POST['question6_0'];}
if(isset($_POST['question6_1'])){$question6_1 = $_POST['question6_1'];}
if(isset($_POST['question6_2'])){$question6_2 = $_POST['question6_2'];}

$points=0;

if($question1=="1"){$points += 0;}
elseif($question1=="2"){$points += 0;}
elseif($question1=="3"){$points += 0;}
elseif($question1=="4"){$points += 0;}

if($question2_0=="5"){$points = $points + 360;}
elseif($question2_0=="6"){$points = $points + 340;}
elseif($question2_0=="7"){$points = $points + 320;}
elseif($question2_0=="8"){$points = $points + 300;}

if($question2_1=="9"){$points = $points + 280;}
elseif($question2_1=="10"){$points = $points + 260;}
elseif($question2_1=="11"){$points = $points + 240;}
elseif($question2_1=="12"){$points = $points + 220;}
elseif($question2_1=="13"){$points = $points + 200;}

if($question2_2=="14"){$points = $points + 180;}
elseif($question2_2=="15"){$points = $points + 100;}

if($question2_3=="16"){$points = $points + 20;}
elseif($question2_3=="17"){$points += 0;}

if($question3=="18"){$points = $points + 20;}
elseif($question3=="19"){$points = $points + 240;}
elseif($question3=="20"){$points = $points + 200;}
elseif($question3=="21"){$points = $points + 220;}

if($question4_1=="22"){$points = $points + 120;}
elseif($question4_1=="23"){$points = $points + 140;}
elseif($question4_1=="24"){$points = $points + 100;}
elseif($question4_1=="25"){$points = $points + 320;}
elseif($question4_1=="26"){$points = $points + 300;}

if($question4_2=="27"){$points = $points + 340;}
elseif($question4_2=="28"){$points = $points + 320;}
elseif($question4_2=="29"){$points = $points + 300;}
elseif($question4_2=="30"){$points += 0;}

if($question4_3=="31"){$points = $points + 280;}
elseif($question4_3=="32"){$points = $points + 360;}

if($question4_3=="33"){$points = $points + 260;}
elseif($question4_3=="34"){$points = $points + 100;}

if($question5=="35"){$points += 0;}
elseif($question5=="36"){$points += 0;}
elseif($question5=="37"){$points += 0;}
elseif($question5=="38"){$points = $points + 260;}

if($question6_0=="39"){$points = $points + 360;}
elseif($question6_0=="40"){$points = $points + 320;}
elseif($question6_0=="41"){$points += 0;}
elseif($question6_0=="42"){$points = $points + 200;}

if($question6_1=="43"){$points = $points + 280;}
elseif($question6_1=="44"){$points = $points + 20;}
elseif($question6_1=="45"){$points = $points + 240;}
elseif($question6_1=="46"){$points = $points + 220;}

if($question6_2=="47"){$points = $points + 120;}
elseif($question6_2=="48"){$points = $points + 340;}
elseif($question6_2=="49"){$points = $points + 100;}
elseif($question6_2=="50"){$points = $points + 300;}

if($points<40)
{echo'waguey';}
elseif($points>40 AND $points<=210)
{echo'kah';}
elseif($points>210 AND $points<=330)
{echo'Trimai';}
elseif($points>330 AND $points<=520)
{echo'houma';}
elseif($points>520 AND $points<=630)
{echo'Seghpaï';}
elseif($points>630 AND $points<=690)
{echo'Seneich';}
elseif($points>690 AND $points<=750)
{echo'Nattan';}
elseif($points>750 AND $points<=810)
{echo'Chevalier';}
elseif($points>810 AND $points<=870)
{echo'Kapy';}
elseif($points>870 AND $points<=930)
{echo'Sorcier';}
elseif($points>930 AND $points<=1000)
{echo'Karashan';}
elseif($points>1000 AND $points<=1030)
{echo'Noki';}
else{echo'Kys';}
?>

pourquoi Parse error: syntax error, unexpected T_IF in /home/a9276577/public_html/data/resulats.php on line 3??
aie aie aie
j'ai honte de le dire, mais mon erreur était
<?
php

au lieu de

<?php

;p

merci a tous, mon script fonctionne apres 1 mois de travail !!!!!!!
Messages postés
422
Date d'inscription
mercredi 24 septembre 2008
Statut
Membre
Dernière intervention
30 mai 2015
67
ben ouais il suffisait de lire les répopnses que l'on te donnait. ;-)