Php probleme echo
stefanelle -
j ai un fichier php qui me permet de modifier les champs tirés d un menu déroulant tout est ok la modif ok mais il devrait y avoir un echo pour me dire que tout s est bien passé et j obtiens une page blanche ... j ai fiat un echo 'je suis ici'; tout au long de mon script et c est au niveau du if($req3) qu il y a un problème ... p
Pouvez vous l aider
merci
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Catalogue</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body link="#000000" vlink="#FFFFFF" alink="#FFFFFF">
<div id="body">
<?php
include ('config.php');
include ('connexion.php');
//reference
$reference = $_POST["reference"];
$sql = "SELECT reference, artiste, album, format FROM contenu WHERE reference='".$_GET['reference']."'" ;
$req = mysql_query($sql) or die( mysql_error() ) ;
$total = mysql_num_rows($req);
$sql3= "UPDATE contenu SET reference='".$_POST
['reference']."', artiste='".$_POST
['artiste']."',album='".$_POST['album']."',format='".$_POST['format']."' WHERE reference
='".$_POST['reference']."'" ;
$req3= mysql_query($sql3) or die('Erreur SQL !'.$sql3.'<br>'.mysql_error());
if($total!=0)
{
echo '<form method ="post" action="modifier.php">';
echo '<table>'."\n";
echo '<tr>';
echo '<td ><b><u>reference</u></b></td>';
echo '<td><b><u>artiste</u></b></td>';
echo '<td><b><u>album</u></b></td>';
echo '<td><b><u>format</u></b></td>';
echo '</tr>'."\n";
while($row = mysql_fetch_array($req))
{
echo '<tr>';
echo '<td><input type="text" name="reference" value="'.$row["reference"].'"/></td>';
echo '<td><input type="text" name="artiste" value="'.$row["artiste"].'"/></td>';
echo '<td><input type="text" name="album" value="'.$row["album"].'"/></td>';
echo '<td><input type="text" name="format" value="'.$row["format"].'"/></td>';
echo '</tr>'."\n";
}
echo '</table>'."\n";
echo '<input type="submit" name="btOk" value="Modifier"/>';
echo '</form>';
if (isset($_POST['btOk']))
{
echo 'je suis ici'; if($req3)
{
echo ("L'insertion a été correctement effectuée") ;
}
else
{
echo("L'insertion à échouée") ;
}
}
}
?>
</body></html>
<?php
mysql_close();
?>
Configuration: Windows Vista Firefox 3.0.6
14 réponses
Un script PHP destiné à modifier les champs issus d'un menu déroulant produit une page blanche et ne retourne pas l'écho de réussite souhaité, malgré des echo répétés dans le code. Le problème semble se focaliser sur la condition if($req3) et sur l'évaluation du résultat de la requête, l'exécution contient aussi des erreurs de syntaxe comme des else mal placés. Plusieurs échanges suggèrent de retirer des blocs else, de corriger la logique et d'afficher l'état via une vérification du succès de la requête, afin d'éviter les pages tronquées. En parallèle, des conseils évoquent l'affichage d'un message de confirmation après validation et la nécessité d'éviter des erreurs de syntaxe qui interrompent l'exécution du script.
-
salut!
Moi je ferai{ echo "L'insertion a été correctement effectuée" ; } else { echo "L'insertion à échouée" ; } -
{ echo 'L\'insertion a été correctement effectuée' ; } else { echo 'L\'insertion à échouée' ; } -
-
normal!un else sans if c'est impossible!Vire(temporairement) la partie traitant le else et on vera s'il affiche!
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
-
non,enlève aussi les {}
met juste echo'blalalalalal';-
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> <title>Catalogue</title> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body link="#000000" vlink="#FFFFFF" alink="#FFFFFF"> <div id="body"> <?php echo "coucou"; ?> </body> </html>
ça ?
-
-
-
modifier.php est le fichier que je vois la?
-
-
-
Es-tu sûr qu'il s'agit de $_GET['reference'] et pas $reference dans la première requete ?
Je demande ça car tu as spécifié$reference = $_POST["reference"];
et je ne vois nulle-part son utilisation. -
ecoute!
remets çaif($req3) { echo ("L'insertion a été correctement effectuée") ; } else { echo("L'insertion à échouée") ; }
mais ne test pas le bouton!(j'ai vu un de mes anciens codes et j'ai procédé de la sorte)! -
ok, alors je vois que tout ets sensé s'afficher à partir du moment ou le nombre de résultats n'est pas 0 :
if($total!=0)
peux-tu ajouter ceci pour voir ?echo $total;
Pas dans le if, mais au-dessus. -
ok bonne nuit!
je vais essayer de voir ça de plus près avant le dodo!