Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
783 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Eviter un $_GET !

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Eviter un $_GET !

n°1563798
guelaztapo​nd
Posté le 23-05-2007 à 09:53:03  profilanswer
 

Bonjour tout le monde,
 
Voila je suis en train de developper un soft en PHP. Mais je bloque sur un probleme.
En fait j'ai une boucle
TANT QUE (j'ai des donnée dans ma table SQL)
{
j'affiche un tableau avec ces fameuses données.
et deux image (poubelle.gif, modif.gif) à chaque lignes
}
 
Quand je click sur une image (poubelle.gif) je veux supprimer la ligne du tableau grace a son ID et donc vider de la table SQL.
 
Actuellement je fais: <a href='accueil.php?add=suppcompte.php&id=".$data[id_login].">
 
Je passe donc par un GET et je recup plus tard le ID pour supprimer la ligne en question.
 
Comme je suis dans une boucle, je ne peux pas faire de champs HIDDEN avec un FORM car mes champs auraient tous le meme nom (id_login) et donc lors du POST, je recup la derniere valeur du while...
 
Quelqu'un aurait-il une idée pour utiliser autre chose qu'un GET ??
 
Thx a lot ;)

mood
Publicité
Posté le 23-05-2007 à 09:53:03  profilanswer
 

n°1563804
anapajari
s/travail/glanding on hfr/gs;
Posté le 23-05-2007 à 10:03:20  profilanswer
 

un form par ligne

n°1563806
guelaztapo​nd
Posté le 23-05-2007 à 10:09:14  profilanswer
 

oui j'y ai pensé mais... c'est pas un peu trop "bourrin" ?

n°1563819
CyberDenix
Posté le 23-05-2007 à 10:41:07  profilanswer
 

Nan, tu fais une balise form avec plusieurs balises input de type='image', de value='submit', et de name='monnomdebouton'.$i  
Dans cet exemple, $i est un indice de boucle.
 
Pour savoir quel bouton a été cliqué, tu fais un if (isset($_POST[monnomdebouton32_x])), ou un if (isset($_POST[monnomdebouton32_y]))
C'est au choix : comme le bouton est graphique on teste l'existence de l'une des deux coordonnées. Le 32 correspond à un exemple d'indice.
 
 :hello:

n°1563845
guelaztapo​nd
Posté le 23-05-2007 à 11:20:41  profilanswer
 

merci pour vos réponses ! Voila la solution que j'ai utilisé:
 

Code :
  1. <script langage="javascript">
  2. function changeHiddenValue(p_sValueToAttribute)
  3. {
  4.     document.monFormulaire.monChampCache.value = p_sValueToAttribute;
  5.     document.monFormulaire.submit();
  6. }
  7. </script>
  8. <a href="javascript:void(changeHiddenValue('<?php echo $data['login_id']?>'))">[IMG POUBELLE]</a>
  9. <form name="monFormulaire" action="cequetuveux.php" method="post">
  10. <input type="hidden" name="monChampCache" value="" />
  11. </form>

n°1563848
omega2
Posté le 23-05-2007 à 11:22:54  profilanswer
 

"monnomdebouton32_y" L'exemple type de la solution bourin et mal pensé : mélanger l'indice au nom d'une zone (bouton, texte, ...) .
 
guelaztapond > Fait simplement un formulaire par élément avec ton fameux "id_login" en "hidden" qui contiendra la valeur correspondant à chaque élément. Ensuite, en fonction de cette valeur et du bouton cliqué tu sauras si t'as affaire à une modif ou une supression et surtout pour quel élément l'action doit avoir lieux.
 
EDIT : Tu n'as pas besoin de javascript pour faire ce que tu cherches. Tu peux trés bien valider tes formulaires en cliquant sur une image mise dnas un boutton.
exemple :

Code :
  1. <BUTTON name="submit" value="poubelle" type="submit">
  2.     <IMG src="/icons/poubelle.gif" alt="wow"></BUTTON>


Message cité 1 fois
Message édité par omega2 le 23-05-2007 à 11:29:54
n°1564222
naceroth
Posté le 23-05-2007 à 18:34:20  profilanswer
 

omega2 a écrit :

"monnomdebouton32_y" L'exemple type de la solution bourin et mal pensé ...
 
EDIT : Tu n'as pas besoin de javascript pour faire ce que tu cherches. Tu peux trés bien valider tes formulaires en cliquant sur une image mise dnas un boutton.
exemple :

Code :
  1. <BUTTON name="submit" value="poubelle" type="submit">
  2.     <IMG src="/icons/poubelle.gif" alt="wow"></BUTTON>



 
Et tu oses parler de solution bourin... Et le <input type="image" /> il sert à quoi à ton avis ??

n°1564411
nORKy
Grmmph...
Posté le 24-05-2007 à 09:52:05  profilanswer
 

Je ne comprends pas le problème du GET.
Les methodes POST et GET sont identiques, mis à part que l'une est dans le nom de la requete, et l'autre dans son corps. Ca ne change rien.
Tu sais que tu faire des tableaux dans tes nom de valeurs de formulaire si nécessaire ?
<input name="login[]" >

n°1564423
soju
One shot !
Posté le 24-05-2007 à 10:04:15  profilanswer
 

nORKy a écrit :

Les methodes POST et GET sont identiques, mis à part que l'une est dans le nom de la requete, et l'autre dans son corps. Ca ne change rien.

un peu de lecture : http://fr.wikipedia.org/wiki/HTTP
=> GET n'est pas prévu pour modifier une ressource, c'est possible mais ça ne respecte pas les recommandations du w3c
 
 

n°1564936
CyberDenix
Posté le 24-05-2007 à 23:11:48  profilanswer
 

Et pis GET ça dévoile tes variables dans la barre d'adresse quand même !


---------------
Directeur Technique (CTO)
mood
Publicité
Posté le 24-05-2007 à 23:11:48  profilanswer
 

n°1564966
guelaztapo​nd
Posté le 25-05-2007 à 07:45:19  profilanswer
 

oui quand même... :)

n°1565001
art_dupond
je suis neuneu... oui oui !!
Posté le 25-05-2007 à 10:02:19  profilanswer
 

CyberDenix a écrit :

Et pis GET ça dévoile tes variables dans la barre d'adresse quand même !


c'est un problème ça :??:


---------------
oui oui
n°1565009
omega2
Posté le 25-05-2007 à 10:13:51  profilanswer
 

naceroth a écrit :

Et tu oses parler de solution bourin... Et le <input type="image" /> il sert à quoi à ton avis ??

Je l'utilises tellement peu souvent que je me rapellais même plus son existance.  :lol:  
 
Je sais, je  [:gzk] .

n°1565409
guelaztapo​nd
Posté le 25-05-2007 à 18:40:38  profilanswer
 

art_dupond a écrit :

c'est un problème ça :??:


 
ben oui ca peut etre un probleme keu meme ! Niveau sécurité par exemple...
Imaginons ke tu envoie en GET un chiffre. Et que se chiffre determine si tu es administrateur par exemple.
Donc j'envoie: index.php?monchiffre=2
par defaut toi tu arrive et tu es en "1"... Il te suffit alors dans la barre d'adresse de mettre "2" et te voila administrateur ! LOL
C'est pas le top ! :non:

n°1565414
WiiDS
20 titres en GC, 0 abandon, 0 DQ
Posté le 25-05-2007 à 18:43:30  profilanswer
 

guelaztapond a écrit :

ben oui ca peut etre un probleme keu meme ! Niveau sécurité par exemple...
Imaginons ke tu envoie en GET un chiffre. Et que se chiffre determine si tu es administrateur par exemple.
Donc j'envoie: index.php?monchiffre=2
par defaut toi tu arrive et tu es en "1"... Il te suffit alors dans la barre d'adresse de mettre "2" et te voila administrateur ! LOL
C'est pas le top ! :non:


 [:wiids]  
 
Tu généralises trop, pour devenir administrateur sur X ou Y système le script fait moultes vérifications et jamais tu ne pourras devenir admin en changeant un chiffre dans un GET, ne rêves pas.
 
Et d'ailleurs toujours dans ton extreme POST ou GET, les deux sont modifiables.


---------------
"I can cry like Roger. It's just a shame I can't play like him" - Andy Murray, 2010
n°1565422
guelaztapo​nd
Posté le 25-05-2007 à 18:50:38  profilanswer
 

CT un simple exemple qui permet de comprendre assez facilement un des problemes du GET... Que la variable est dans l'URL.
je me doute que je vais pas etre admin en passant un "1" par un "2" LoooooooL Gniééééé :bounce:

n°1565429
jagstang
Pa Capona ಠ_ಠ
Posté le 25-05-2007 à 19:06:38  profilanswer
 

ce qui est mal avec le get c'est surtout de passer user=bla&pass=toto [:joce]


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°1565433
art_dupond
je suis neuneu... oui oui !!
Posté le 25-05-2007 à 19:30:50  profilanswer
 

a priori on vérifie ce qu'on reçoit en get (comme en post d'ailleurs) donc je vois toujours pas le problème [:spamafote]


---------------
oui oui
n°1565434
jagstang
Pa Capona ಠ_ಠ
Posté le 25-05-2007 à 19:33:02  profilanswer
 

avoir le mot de passe dans l'historique c'est pas très malin.


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°1565435
art_dupond
je suis neuneu... oui oui !!
Posté le 25-05-2007 à 19:33:33  profilanswer
 

oups je répondais pas à toi :p


---------------
oui oui

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Eviter un $_GET !

 

Sujets relatifs
[POO] Restreindre Get et Set à certaines valeurs ?window.open avec des variables JS en GET
[VBA Excel] Eviter l'affichage de certains avertissementsmethode GET
Eviter le message : "voulez-vous enregistrer les modifications..."Eviter les questions dans un script
Eviter que les animations soient automatiquement redimensionnées ?[Résolu] Invalidate -> éviter le clignottement
recomposer mail dans un formulaire (éviter les SPAM)Problème avec la Fonction GET['etat']
Plus de sujets relatifs à : Eviter un $_GET !


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR