Confirm() en javascript

Fermé
Profil bloqué - 3 févr. 2010 à 22:24
 Profil bloqué - 5 févr. 2010 à 17:03
Bonjour,

mon but est d'afficher une alerte qui demande la confirmation sur la suppression d'un enregistrement dans la table client.

voici le code php avec dreamweaver:

<?php
$hote='localhost';
$user='root';
$pass='';
$li=mysql_connect($hote,$user,$pass);

if(!$li){
die('non connecté');
}

mysql_select_db('client',$li);

$prenomvar=$_POST['prenom'];
$nomvar =$_POST['nom'];

$date_naissancevar = $_POST['date_naissance'];




$cnd="";
if($nomvar!=""){ $cnd="nom like '$nomvar%' and " ;};


if($prenomvar!="") {
$cnd.=" prenom like '$prenomvar%' and ";}


if( $date_naissancevar!="") {
$cnd.="date_naissnace='$date_naissancevar' and " ; }


$marequête="select * from client where $cnd";
//echo $marequête;
$seq=substr($marequête,0,strlen($marequête)-5);
//echo "<br>".$seq ;
$req=mysql_query($seq,$li) or die(mysql_error());

echo "<br> <br/>";

echo "<table border=5 cellpadding=10 cellpacing=4 width=60% >\n";
echo"<th> code </th>";
echo"<th> nom </th>";
echo"<th> prénom </th>";
echo"<th> tel </th>";
echo"<th> date_naissance </th>";

while ($line = mysql_fetch_array($req)) {
echo "\t<tr>\n";
echo "\t\t<td>"; echo $line['code']; echo"</td>\n";
echo "\t\t<td>"; echo $line['nom']; echo"</td>\n";
echo "\t\t<td>"; echo $line['prenom']; echo"</td>\n";
echo "\t\t<td>"; echo $line['tel']; echo"</td>\n";
echo "\t\t<td>"; echo $line['date_naissnace']; echo"</td>\n";
echo "\t\t<td> <form action='supprimer.php' method='post'> alt='supprimer' onclick='if (confirm('Voulez-vous Supprimer')==true) {document.location='supprimer.php?code=$line['code']'; return true;} else { return false ;}'
</form> </td>\n "
echo "\t\t<td> <form action='modifier.php' method='post'>
<input name='mod' type='submit' value='modifier' />
<input name='code' type='hidden' value='$line[code]'>
<input name='nom' type='hidden' value='$line[nom]'>
<input name='prenom' type='hidden' value='$line[prenom]'>
<input name='tel' type='hidden' value='$line[tel]'>
<input name='date_naissance' type='hidden' value='$line[date_naissnace]'>
</form> </td>\n" ;
echo "\t</tr>\n";
}
echo "</table >\n";



//on libère l'espace mémoire
mysql_free_result($req);
mysql_close();

?>


je compile ce code la mais il l'affiche l'erreur suivant:

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\Program Files\EasyPHP5.2.10\www\Gestion\recherche2.php on line 87


j'espère avoir un solution de mon problème.


merci en avance
            
                

5 réponses

Cephei Messages postés 118 Date d'inscription mercredi 9 décembre 2009 Statut Membre Dernière intervention 10 décembre 2018 19
3 févr. 2010 à 23:40
Bonsoir,


Ben heu ...
echo "\t\t<td> <form action='modifier.php' method='post'>
<input name='mod' type='submit' value='modifier' />
<input name='code' type='hidden' value='$line[code]'>
<input name='nom' type='hidden' value='$line[nom]'>
<input name='prenom' type='hidden' value='$line[prenom]'>
<input name='tel' type='hidden' value='$line[tel]'>
<input name='date_naissance' type='hidden' value='$line[date_naissnace]'>
</form> </td>\n" ;

faut finir tes chaines de caractère avant de passer à la ligne ...

Sinon j'ai déjà vu un autre bug mais dans le HTML ....

<form action='supprimer.php' method='post'> alt='supprimer' onclick='if (confirm('Voulez-vous Supprimer')==true) {document.location='supprimer.php?code=$line['code']'; return true;} else { return false ;}'
</form> </td>\n "

Déjà t'as le droit de mettre un ; après le dernier guillmet et de plus ta balise form se ferme avant la fin de ses attributs ... du coup ça va pas marcher du tout ton truc !

En tout cas pour la lisibilité de ton code, je te conseille d'éviter les echo ...
de mettre qu'une instruction par ligne ...
De mettre en place une indentation que ce soit en php ou en html ...
Etc ...

Tu verras beaucoup mieux tes erreurs, car je suis sur qu'il y en a d'autres que j'ai pas vu !

Bon courage,
Cephei
0
Profil bloqué
4 févr. 2010 à 18:46
ou est l'erreur dans ce code :

echo " alt='supprimer' onclick='if (
confirm('Voulez-vous Supprimer')==true) {document.location='supprimer.php?code=$line['code']'; return true;} else { return false ;}'";
0
Cephei Messages postés 118 Date d'inscription mercredi 9 décembre 2009 Statut Membre Dernière intervention 10 décembre 2018 19
5 févr. 2010 à 00:47
Bonsoir,

Ben c'est pas dans ce code... C'est comment tu amène ce code ...
alt et onclick sont des attributs de balise ! La ils sont dans le "innerHtml" de la balise form ... donc ça va être affiché et non exécuté ! De plus alt et onclick ne sont pas des attributs utilisés par la balise form...

En plus tu peux faire plus simple ...

Essaye plutôt :

<form action="'supprimer.php?code=$line['code']" method="post">
<input type="submit" onclick="if(!confirm('Voulez-vous Supprimer')) return false;" value="Supprimer" />
</form>
0
Profil bloqué
5 févr. 2010 à 16:54
merci Cephei, ça marche bien
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Profil bloqué
5 févr. 2010 à 17:03
Merci Cephei ,ça marche bien.
0