Probleme de quotes ?

Résolu
sluggogle Messages postés 2 Date d'inscription lundi 8 octobre 2007 Statut Membre Dernière intervention 21 novembre 2007 - 21 nov. 2007 à 14:15
sluggogle Messages postés 2 Date d'inscription lundi 8 octobre 2007 Statut Membre Dernière intervention 21 novembre 2007 - 21 nov. 2007 à 15:00
Bonjour,

J'ai defini une variable avec une boucle while php :

//----------------------------------------------------

while ($data3 = mysql_fetch_array($go3))

{

$ce = $data3['ID_CE'];

}

//---------------------------------------------------

J'ai aussi une fonction en Javascript qui demande confirmation :

//--------------------------------------------------------

function confirmation(message,action)

{

if(confirm(message)) {eval(action);}

}

//--------------------------------------------------------

Un lien a faire en cas de confirmation :

//--------------------------------------------------------

$action =
"window.location.href='index.php?page=traitement&categorie=2&action=1&id=".$ce." ' ";
//--------------------------------------------------------

Et finalement l'application du tout :

//-------------------------------------------------------

onClick="confirmation('Supprimer ?','<?php echo $action;?>')"

//-------------------------------------------------------

Je pense que mon soucis vient des quotes. A cause de la simple quote qui indique le
debut du lien --> 'index.php ...'
elle ferme la quote qui encadre l'élément "action" de ma fonction. Du coup, la fonction m'affiche bien le message de confirmation sans valider le lien.


A moins que les triples quotes existe il y a t'il une solution a mon problème ou alors
une méthode complètement différente ?

Merci d'avance ^^

2 réponses

cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
21 nov. 2007 à 14:45
Bonjour,

    à priori, met " ( ou \' ) pour les quotes dans $action.
   
    mais pourquoi donc

{eval(action);} ?
       fais


window.location.href="<?php echo $lelien;?>";
       si c'est toujours un lien...

    et quand on se pomme dans les ' ou les " , comme le navigateur,
       passer par une fonction, un formulaire....





<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
3
sluggogle Messages postés 2 Date d'inscription lundi 8 octobre 2007 Statut Membre Dernière intervention 21 novembre 2007
21 nov. 2007 à 15:00
Super ! merci, c'est exactement ce qu'il me fallait

je ne connaissais pas le \ avant une quote.

Je n'ai pas eu l'impression de m'être perdu dans les quotes... j'avais identifié mon soucis justement (c'est pas pour ca que j'arrivais à trouver d'alternative ^^ ).

Par contre, ma fonction Confirmation est bien utilisée pour différentes actions (comme fermer le navigateur) donc je ne pouvais pas mettre window.location.href directement.
Mais il se peut que eval() ne soit pas la fontion correcte à utiliser

En tout cas grand merci, je vais pourvoir continuer
3
Rejoignez-nous