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

  FORUM HardWare.fr
  Programmation
  PHP

  Passer div id sur une event onclick a du PHP

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Passer div id sur une event onclick a du PHP

n°2096500
Tekamolo
Posté le 20-08-2011 à 11:21:58  profilanswer
 

Bonjour,

 

Quelqu'un pourrait me dire quel chemin emprunter pour passer l'id d'un div (concrètement une photo) a du php en cliquant dessus?

 

Je voudrais éviter de passer par l'adresse URL.

 

J'ai cherché sur internet et rien n'est clair!!

 

Merci de votre aide!


Message édité par Tekamolo le 20-08-2011 à 11:24:05
mood
Publicité
Posté le 20-08-2011 à 11:21:58  profilanswer
 

n°2096513
CyberDenix
Posté le 20-08-2011 à 13:37:38  profilanswer
 

Il y a plusieurs possibilités :  
 
Soit tu veux chopper cet id dans le cadre d'un formulaire et dans ce cas, au moment de la génération du formulaire tu t'arranges pour que l'id soit inscrit dans un champ <input type='hidden' value='mon_id' />
 
Soit tu veux juste passer l'id à un traitement PHP (découplé ou non d'un formulaire) et dans ce cas-ci il te faut faire de l'AJAX.
 
En l'absence d'explications avancées, c'est tout ce que je peux te préconiser.


---------------
Directeur Technique (CTO)
n°2096521
Tekamolo
Posté le 20-08-2011 à 14:08:57  profilanswer
 

Hey Merci pour la réponse:

 

J'essaie d'utiliser Jquery, un formulaire ne marchera pas je crois parce que je dois cliquer sur l'image:

Citation :

 
  <script type="text/javascript">
   $(document).ready(function()
   {
    $('div.my_object_portfolio_box').click(
     function()
     {
      var id = $(this).attr("id" );
      $.post("portfolio.php", id, alert("Done:"+id));
      window.location='portfolio.php';
     });
   });
   
  </script>

 

Avec $.post() ont est sensé envoyer l'info dans le fichier "portofolio.php" mais je ne sais pas comment on l'exploite.
Et du coup je ne sais pas non plus comment s'il y a des erreurs. Personnes n'est vraiment explicite à ce sujet sur les autres forums.

 

Pour ce qui est de l'html:

 
Citation :

 

<div id="5" class="my_object_portfolio_box">
      <img src="image.jpg">
</div>

 


 

Les divs sont générés par un php script et donc peuvent être multiples.

 

Merci


Message édité par Tekamolo le 20-08-2011 à 14:25:34
n°2096545
CyberDenix
Posté le 20-08-2011 à 20:45:28  profilanswer
 

post() est un peu limité, je te conseille ajax() qui est la fonction sous-jacente disposant de l'intégralité des paramètres
 
Dans le JS de ta page :
 

Code :
  1. $.ajax({
  2.            type: 'POST',
  3.            url: 'mon_url_vers_mon_fichier_php',
  4.            data:'id='+$('#mon_id')+
  5.                '&id2='+$('#mon_id2'),
  6.            dataType:'html',                                 /* Type des données renvoyées : html, text, json...*/
  7.            cache: false,
  8.            success: function(html) {
  9.                 alert(html);
  10.                 $('#pouet').html(html); /* On place le résultat de l'appel dans un div ayant pour id pouet */    
  11.            },
  12.            error: function(){
  13.                 alert('erreuuuuuur !');
  14.            }
  15.     });


 
Dans le fichier php :
 

Code :
  1. <?php
  2.  
  3. $id  = (isset($_GET['id'] && is_int($_GET['id']) && $_GET['id']) ? $_GET['id'] : 0;
  4. $id2 = (isset($_GET['id2'] && is_int($_GET['id2']) && $_GET['id2']) ? $_GET['id2'] : 0;
  5.  
  6. $out = '';
  7. $out .=  '<div>$id=['.$id.']</div>';
  8. $out .=  '<div>$id2=['.$id2.']</div>';
  9.  
  10. echo $out;
  11.  
  12. ?>


 
En général je renvoie du json, constitué d'un tableau à deux postes, le premier est un code d'erreur (0 signifie ok, > 0 signifie une erreur) et le second poste est dédié aux données (message d'erreur, message informatif, données récupérées en base... etc.)


Message édité par CyberDenix le 20-08-2011 à 20:54:36

---------------
Directeur Technique (CTO)
n°2096547
Ydalb
In Crêpes n' Cidre I Trust!
Posté le 20-08-2011 à 21:14:36  profilanswer
 

Un ID ne peut être qu'un simple nombre :o
 
/troll :D


---------------
:o
n°2096564
CyberDenix
Posté le 20-08-2011 à 22:56:45  profilanswer
 

Remarque tout à fait valide, car un id en html n'est pas valide W3C en tant que nombre, il faut un caractère non numérique style '_123'  :jap:


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

  Passer div id sur une event onclick a du PHP

 

Sujets relatifs
javascript dans une condition PHP[Javascript/PHP] Problème de retour chariot dans un cookie
[PHP] réflection avant developpement[PHP/MYSQL] Updater la valeur des radio dans une base [Résolu]
Démon PHP avec du fork :)USB : faire passer le PC pour un "périphérique"
[PHP, MYSQL] Réaliser un classement avec données de plusieurs tablesFlèches du clavier et jeu flash dans site PHP
Choix d'un framework PHP en 2011[PHP] Retrouver à la page précédente les données renseignées
Plus de sujets relatifs à : Passer div id sur une event onclick a du PHP


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