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

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  pb recup tableau php en javascript

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

pb recup tableau php en javascript

n°1387913
antho1983
Posté le 15-06-2006 à 09:31:54  profilanswer
 

bonjour,
 
j'ai un tableau créé en php.
 
print_r($tab) donne : Array ( [61] => 4 [62] => 4 [63] => 4 [64] => 2 [65] => 2 [66] => 4);
 
lorsque je clique sur une case du tableau je veut changer la valeur de la case du tableau. et ensuite je veus pouvoir le récupérer dans le php pour pouvoir y afficher les valeurs.
 
Comment je peus le faire?

mood
Publicité
Posté le 15-06-2006 à 09:31:54  profilanswer
 

n°1387916
teufeur2le​st
Posté le 15-06-2006 à 09:40:30  profilanswer
 

En fait il faut que que tu récupéres dans une variable la nouvelle valeur entrée : cette variable peut soit être un input hidden, soit être un input text, puis tu dois valider ton formulaire pour envoyer les valeurs des variables au serveur et donc y accéder grâce à $_POST, tu me suis?

n°1387927
antho1983
Posté le 15-06-2006 à 10:00:42  profilanswer
 

Voilà j'ai défini mon input hidden:  

Code :
  1. echo "<input type=hidden name=\"change\">";


 
Dans ma fonction changecouleur je fais :

Code :
  1. function changecouleur(obj){
  2.  obj.style.background="#007FFF";
  3.  var casier=obj.id+"/";
  4.  document.change+=casier;
  5. }


 
ensuite je fais dans ma page $recup = $REQUEST["change"];
                                           echo $recup  
 
mais cela ne m'affiche rien.

n°1387930
teufeur2le​st
Posté le 15-06-2006 à 10:10:13  profilanswer
 

Vérifie d'abord en JS si la valeur du tab est bien mise dans ton input : pour cela fait un sorte de alert(document.change.value) dans une fonction appelée par l'évènement validation du formulaire ou clique sur le bouton submit....
 
à mon avis, déjà là t'auras pas d'affichage, essaye alors de mettre "document.change.value += casier" puis teste l'affichage du alert...
 
au fait ton formulaire il a quel attribut method? POST? car dans ce cas essaye plutôt dans ton script php de faire : $recup = $_POST["change"]

n°1387931
antho1983
Posté le 15-06-2006 à 10:11:23  profilanswer
 

c'est bon en fait j'avais oublié de mettre le nom du form
 
function changecouleur(obj){
  obj.style.background="#007FFF";
  var casier=obj.id+"/";
  document.monform.change.value+=casier;
}
 
Mainteant j'obtiens bien les différentes valeurs :
 
711/725/61/...
 
il faut que le les mette dans un tableau ya t'il un moyen de le faire?

n°1387932
antho1983
Posté le 15-06-2006 à 10:19:24  profilanswer
 

autre problème dans la fonction changecouleur
si la couleur est deja égale à #007FFF je veut la mettre comme elle était à l'origine.
ya t'il un moyen de le faire

n°1387936
teufeur2le​st
Posté le 15-06-2006 à 10:24:09  profilanswer
 

pour mettre tes valeurs dans le tableau, il existe une fonction php qui te permettent de le faire : je t'invite à voir la doc de la fonction explode sur http://fr2.php.net/manual/fr/function.explode.php
 
Pour la couleur, il te suffit de faire un test genre if(obj.style.background == '#007FFF'), etc.

n°1388011
antho1983
Posté le 15-06-2006 à 11:50:54  profilanswer
 

c bon çà marche pour les id.
Mais la comparaison de couleur ne marche pas.
 

Code :
  1. function changecouleur(obj) {
  2.  if(obj.style.background=='#007FFF'){
  3.  obj.style.background='#FF0000';
  4.  }else {
  5.         obj.style.background='#007FFF';
  6.          }      
  7.  var casier=obj.id+"/";
  8.  document.monform.change.value+=casier;
  9.  alert(document.monform.change.value);
  10. }


 
si ma couleur est bleue (#007FFF) je veut la mettre a rouge (#FF0000) mais cela ne fait rien

n°1388209
teufeur2le​st
Posté le 15-06-2006 à 14:51:13  profilanswer
 

il faut d'abord essayer de récupérer la couleur de l'élément,
 
alert(obj.style.background) ou peut-être background-color, ... voir doc JS ...

n°1388228
gatsu35
Blablaté par Harko
Posté le 15-06-2006 à 15:10:21  profilanswer
 

ca serait pas mieux de jouer plutot sur le className du TR ?
 
<table>
<tr class="odd">
<td></td>
</tr>
<tr class="even">
<td></td>
</tr>
 
if (monTR.className == "odd" ) {
  monTR.className == "even";
}
 
comme ca tu change les couleurs dans la feuille de style et pas dans le JS

mood
Publicité
Posté le 15-06-2006 à 15:10:21  profilanswer
 

n°1388254
antho1983
Posté le 15-06-2006 à 15:37:38  profilanswer
 

en fait voilà une définition de case :  

Code :
  1. echo "<td align=center width=\"3%\" value=\"macase\" id=$ident bgcolor=\"#00FF00\" onclick=changecouleur(this)><b>$j</b></td>";


 
ma fonction changecouleur:  

Code :
  1. function changecouleur(obj) {
  2.  alert(obj.value);
  3.  if(obj.style.background!="" ){
  4.  obj.style.background="#FF0000";
  5.  }else {
  6.         obj.style.background="#007FFF";
  7.          }      
  8.  var casier=obj.id+"/";
  9.  document.monform.change.value+=casier;
  10. }


 
quand je clique sur une case le alert(obj.value) me dit "undefined"
 
alors que quand je fais alert(obj.id) cela me rend bien la valeur de l'id.
Je ne comprend pas.
 

n°1388284
gatsu35
Blablaté par Harko
Posté le 15-06-2006 à 16:18:25  profilanswer
 

le contenu d'un element HTML (donc pas element formulaire) est innerHTML (mais là tu as le HTML qu'il y a dedans),
et si tu veux que le texte :  
sous IE c'est innerText
sous FF c'est textContent
 
sinon jette moi ton bgcolor="" et utilise plutot style="background:#FF0000"
car là bgcolor c'est de la merde en barre :o
 
et pour le onclick tu me le met entre guillemets bordel et meme tous les attributs :fou:

n°1388285
antho1983
Posté le 15-06-2006 à 16:19:56  profilanswer
 

c'est bon j'ai résolu le pb. Il faut utiliser axis dans le td
 

Code :
  1. <td align=center axis=\"rc\" width=\"3%\" id=$ident value=1 bgcolor=\"#FF0000\" onclick=changecouleur(this)><b>$j</b></td>";


 
et le recupérer dans la fonction changecouleur.
 
Merci a tous

n°1388352
gatsu35
Blablaté par Harko
Posté le 15-06-2006 à 17:36:54  profilanswer
 

nan mais là tu t'y prend mal


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  pb recup tableau php en javascript

 

Sujets relatifs
[Javascript / DOM (?)] Renommer un element de formulaireActualisation de tableau croisé dynamique sur plage variable
[html] problème de tableau ( débutant )[RESOLU] liaison javascript / PHP
[javascript] Interpreter les balises htmlprobleme tableau
[JAVASCRIPT] Un pied de page qui ne marche pas...Liens et javascript
Margin d'un tableau ... je pète un plomb[JavaScript] Rechercher dans une boite a liste
Plus de sujets relatifs à : pb recup tableau php en javascript


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