Parse error: syntax error, unexpected 'if'

Fermé
vinkey33 Messages postés 92 Date d'inscription mercredi 9 décembre 2015 Statut Membre Dernière intervention 23 janvier 2021 - Modifié par vinkey33 le 2/02/2017 à 14:32
 Utilisateur anonyme - 2 févr. 2017 à 23:18
Bonjour, j'ai une difficulté a finir mon code je m'explique, j'aimerais selectionné
un nom a partir d'un liste déroulante pour qu'ensuite il aille sur ligne de mon tableau.
par exemple : si je selectionne ADRAGNA comme sur l'image j'aimerai qu'il selectionne
la ligne de mon tableau lié a ce nom , voici le code que j'ai commencé et que j'arrive
pas a terminé ainsi que l'image qui illustre ma demande:
<?php require_once "PDO_connect.php";
$query="SELECT * FROM smartphone.select_nom_prenom_user";
try{
$prep = $bdd->prepare($query);
$prep->execute();
$resultats = $prep->fetchAll();

}catch(Exception $e){;
echo "Erreur ! ".$e->getMessage() ;
}
$host = "localhost";
$user = "root";
$pass = "Mm101010";
$dbn = "smartphone";
$link = mysqli_connect($host, $user, $pass, $dbn);
$type_gestion = 1;
switch ($type_gestion) {
case '1':
if (PHP_VERSION_ID < 50400) error_reporting (E_ALL | E_STRICT);
else error_reporting (E_ALL);
ini_set('display_errors', true);
ini_set('html_errors', false);
ini_set('display_startup_errors',true);
ini_set('log_errors', false);
ini_set('error_prepend_string','<span style="color: red;">');
ini_set('error_append_string','<br /></span>');
ini_set('ignore_repeated_errors', true);
break;
}
?>
<!DOCTYPE>
<html>
<head>
<title>Abonnement</title>
<script type="text/javascript" src=""quot;"quot;https://cdn.datatables.net/3.1.0/js/jquery.dataTables.min.js"></script>
<link rel="stylesheet" type="text/css" href="Select.css">

<style>
#selectable .ui-selected { background: #0000FF; }
#selectable .ui-selecting { background: #0000FF; }
</style>
<script type="text/javascript"></script>
<script src=""quot;"quot;https://code.jquery.com/jquery-1.12.4.js"></script>
<script src=""quot;"quot;https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<script>
$( function() {
$( "#selectable" ).selectable();
} );
function affiche(tag)
{
msgfield = document.getElementById("id_champ");

msgfield.value = tag ;
msgfield.focus();
}
var oTDs = document.querySelectorAll('td');
var oSelect = document.querySelector('select');
function action(val) {
var trouve,
i, nb = oTDs.length;
for (i = 0; i < nb; i += 1) {
trouve = oTDs[i].textContent.indexOf( val) > -1;
oTDs[i].parentNode.className = trouve ? 'selected' : '';
}
}
oSelect.onchange = function () {
action(this.value);
};
@en_tete= "SELECT `select_nom_prenom_user`.`USER_ID`, `select_nom_prenom_user`.`Nom`, `select_nom_prenom_user`.`Num_SIM`,`select_nom_prenom_user`.`Num_ligne` FROM select_nom_prenom_user WHERE (`select_nom_prenom_user`."


@QWhere="`" & @nomchamp & "` " & @contenuchamp & ")"


function clic() { document.getElementById("onclic").innerHTML = ""; }

@nomchamp = "Nom"
@contenuchamp = $Nom
@query= @en_tete & @QWhere
$result = mysqli_query($link, $query)

end onclic liste




@nomchamp = "Num_SIM"
@contenuchamp = $Num_SIM
@query= @en_tete & @QWhere
$result = mysqli_query($link, $query)
</script>
</head>
<body>
<center>
<table id="selectable" class="DataTable" >
<thead>
<tr>
<th>Operateur</th>
<th>SIM</th>
<th>PUK</th>
<th>Num ligne</th>
<th>Volume</th>
<th>Statut abo</th>
</tr>
</thead><tbody>
<?php
echo "<br>";
if(!empty($resultats)){
foreach ($resultats as $row) {

echo "<tr>";
echo "<td data-name=\"Operateur\">".$row["Operateur"]."</td>";
echo "<td data-name=\"Num_SIM\">".$row["Num_SIM"]."</td>";
echo "<td data-name=\"PUK\">".$row["PUK"]."</td>";
echo "<td data-name=\"Num_ligne\">".$row["Num_ligne"]."</td>";
echo "<td data-name=\"Volume\">".$row["Volume"]."</td>";
echo "<td data-name=\"Statut_abo\">".$row["Statut_abo"]."</td>";
echo "</tr>";
}
}else {
echo "Pas d'enregistrements dans cette table...";
}

?>
</tbody></table><br><br>
<?php
$select = "SELECT `select_nom_prenom_user`.`USER_ID`, `select_nom_prenom_user`.`Num_SIM`, `select_nom_prenom_user`.`Num_ligne`, `select_nom_prenom_user`.`Nom`
FROM `select_nom_prenom_user`
WHERE (`select_nom_prenom_user`.`Nom` " & $ANDRE & ")"
if($result);//erreur__ echo'<option value="" selected="selected" disabled="disabled">Selectionnée : Nom</option>';
while ($idresult = mysqli_fetch_row($result))
{
$USER_ID = $idresult[0];
$Nom = $idresult[1];

echo'<option value="' . $USER_ID . '">' . $Nom . '</option>';
}
echo'</select></p><p>';
http://static.ccm2.net/www.commentcamarche.net/pictures/jCYsjnnNMCKRW9RBZUPnbfCzeSnyZFhE1l3ntqdrzFosnGi3cVGLN3DUMhWVMNDr-ex-tabl-list.png_ }?>

merci

1 réponse

jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
2 févr. 2017 à 21:26
Bonjour,

Le message, bien qu'incomplet..., est pourtant clair....
Tu as un souci avec un IF

Et visiblement.. c'est celui-la
if($result);

Où as tu vu qu'on placait un ";" à la suite d'un IF ??
remplaces par :
if($result) {

0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
2 févr. 2017 à 22:06
Ah j'oubliais...
Il semble aussi que la requête qui précède ton IF ne soit pas utilisée ....

A la limite .. à la place de ton code et de ton while (inutile...) tu peux faire :
$select = "SELECT U.USER_ID
                , U.Num_SIM
                , U.Num_ligne
                , U.Nom
          FROM select_nom_prenom_user U
          WHERE U.Nom  = :nom";
 $datas = array(':nom'=>$ANDRE);         
try{
 $prep = $bdd->prepare($select);
 $prep->execute($datas);
 $result = $prep->fetchAll();
}catch(Exception $e){;
  echo "Erreur ! ".$e->getMessage() ;
}

if(!empty($result)){
  $USER_ID = $result['USER_ID'];
  $Nom = $result['Nom'];
  echo'<option value="' . $USER_ID . '">' . $Nom . '</option>';
}


Et puis tu as aussi du php qui semble se balader au milieu de ton javascript ...
  @nomchamp = "Nom"
    @contenuchamp = $Nom
    @query= @en_tete & @QWhere
    $result = mysqli_query($link, $query)

end onclic liste




    @nomchamp = "Num_SIM"
    @contenuchamp = $Num_SIM
    @query= @en_tete & @QWhere
    $result = mysqli_query($link, $query)
 


PHP qui fait appel à du MYSQLI .... alors que tu utilises du PDO ...

Et il semble, pour finir ... que tu as des morceaux de code qui ressemblent plus à de la syntaxe VB .. qu'a du php ou du javascript ....

Bref... Un peu du grand n'importe quoi ton code .. non ???
Tu sais ce que tu fais ou tu copie/colle du code trouvé au hasard sur le net en espérant que ça puisse marcher ?? Oo
0
Bonsoir Jordane

Non, un ; après un if ne provoque pas de parse error. C'est parfaitement correct du point de vue de la syntaxe, même si c'est rarement fait exprès par celui qui l'écrit.
Ce message d'erreur vient du ; qui manque AVANT le if.
0