Débutant javascript: fonction confirm
Fermé
anisse4
Messages postés
209
Date d'inscription
jeudi 2 novembre 2006
Statut
Membre
Dernière intervention
19 juin 2009
-
17 juin 2008 à 18:21
anisse4 Messages postés 209 Date d'inscription jeudi 2 novembre 2006 Statut Membre Dernière intervention 19 juin 2009 - 18 juin 2008 à 09:59
anisse4 Messages postés 209 Date d'inscription jeudi 2 novembre 2006 Statut Membre Dernière intervention 19 juin 2009 - 18 juin 2008 à 09:59
A voir également:
- Débutant javascript: fonction confirm
- Telecharger javascript - Télécharger - Langages
- Logiciel de programmation pour débutant - Guide
- Javascript est activé mais ne fonctionne pas ✓ - Forum Réseaux sociaux
- Node.js javascript runtime virus ✓ - Forum Virus
- Javascript echo ✓ - Forum PHP
1 réponse
macgawel
Messages postés
664
Date d'inscription
mercredi 7 mai 2008
Statut
Membre
Dernière intervention
1 novembre 2008
89
17 juin 2008 à 18:48
17 juin 2008 à 18:48
Bonjour.
Le problème vient certainement de ce que tu mélanges du JS avec du PHP.
Quand tu appelles ta page (c'est une page php, je suppose), l'interpréteur affiche le code html <SCRIPT>...
Puis il tombe sur le <?, qui lui dit "C'est du php, il faut l'interpréter".
=> Il interpréte le code
Et du coup il supprime le compte !
Tu ne peux pas passer de requête SQL (exécutée côté serveur)) à partir de JS (qui s'exécute côté client)
Pour ce que tu comptes faire, tu devrais peut-être te tourner vers l'AJAX : tu appelles dans ton JS une page PHP qui exécute la requête.
Sinon, il faut que ton JS envoie sur une page php qui contient le code de ta requête :
Et dans ta page suppression.php, tu récupères le pseudo passé en paramètre, tu passes la requête de suppression et tu reviens sur la page que tu veux.
En passant :
Attention à bien sécuriser ton truc, parce que là tu permets à n'importe qui de supprimer n'importe quel compte (enfin, ça dépend du reste du code...)
Le problème vient certainement de ce que tu mélanges du JS avec du PHP.
Quand tu appelles ta page (c'est une page php, je suppose), l'interpréteur affiche le code html <SCRIPT>...
Puis il tombe sur le <?, qui lui dit "C'est du php, il faut l'interpréter".
=> Il interpréte le code
<? mysql_connect('localhost','root',''); mysql_select_db('test'); mysql_query("delete from utilisateur where nom='$pseudo' "); mysql_close(); ?>
Et du coup il supprime le compte !
Tu ne peux pas passer de requête SQL (exécutée côté serveur)) à partir de JS (qui s'exécute côté client)
Pour ce que tu comptes faire, tu devrais peut-être te tourner vers l'AJAX : tu appelles dans ton JS une page PHP qui exécute la requête.
Sinon, il faut que ton JS envoie sur une page php qui contient le code de ta requête :
<SCRIPT language="JavaScript"> function confirmation(pseudo) { var reponse = confirm("Etes-vous sur de vouloir effacer votre compte?!?") if(reponse){ // On renvoie vers la page suppression.php en passant en paramètre le pseudo document.location='suppression.php?pseudo='+$pseudo /* Ton alert ne s'exécutera pas, vu que tu demandes d'aller sur une autre page... A la place, si tu le veux vraiment, mets le dans ta page suppression.php alert("votre compte a été supprimé!!!!"); */ } else{ alert("votre compte n'est pas supprimé") } } </script>
Et dans ta page suppression.php, tu récupères le pseudo passé en paramètre, tu passes la requête de suppression et tu reviens sur la page que tu veux.
En passant :
Attention à bien sécuriser ton truc, parce que là tu permets à n'importe qui de supprimer n'importe quel compte (enfin, ça dépend du reste du code...)
18 juin 2008 à 09:59
J'ai appliqué tes modifications et ça marche nickel! Je n'ai juste pas récupéré $pseudo dans l'URL car je l'a définit comme variable superglobal avec $_SESSION .
merci ++