Tableau javascript vers PHP [Résolu]

Messages postés
363
Date d'inscription
mercredi 18 mai 2005
Dernière intervention
29 janvier 2007
- - Dernière réponse : Ordinastie
Messages postés
93
Date d'inscription
samedi 29 janvier 2005
Dernière intervention
17 octobre 2008
- 19 oct. 2006 à 12:45
Bonjour,

Si la question a déjà été abordée, et bien désolée, mais j'ai pas trouvé !!

Voilà, j'ai un page php, qui affiche un tableau de données. Ces données peuvent être modifiées directement dans la page, grâce au javascript. Le problème, c'est que je dois enregistrer ce tableau de données dans ma base SqlServer, et je ne sais pas trop comment m'y prendre.
Je me suis dis que j'allais récupérer le contenu du tableau grâce à outerHTML, faire un tableau associatif de mes données ainsi récupérées et envoyer ce tableau à PHP pour l'enregistrement dans ma base. Mais comment envoyer un tableau en PHP ?? Via un formulaire ??
Sinon je me suis dis qu'il serait peut-être possible d'enregistrer mes modifications au fur et à mesure  dans une variable de session PHP qui contiendrait le tableau associatif ... mais je suis pasure que ça soit possible. Comme ça j'aurais peut-être moins de mal à passer mon tableau à PHP ...

Enfin voilà, qu'en pensez-vous ? Vous feriez comment ??

Merci bien de vos réponses
Afficher la suite 

Votre réponse

11 réponses

Meilleure réponse
Messages postés
13619
Date d'inscription
jeudi 13 février 2003
Dernière intervention
15 octobre 2013
3
Merci
Bonjour,
   un tableau ? alors, peut-être ?
   ch'tit exemple ?

new_1.php :
<form name=\"frm\"
  action=\"new_2.php\"
  method=\"post\" />
<table>
 ----
sai[]" value="1" />,
   sai[]" value="2" />

</form>

new_2.php :
<?php
 print_r ($_POST["sai"]);
?>

      il y a bien sûr d'autres solutions si celle-ci ne convient pas.

<hr />
            Cordialement    Bul    [mon Site]    [M'écrire]
<hr />

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 98 internautes ce mois-ci

Commenter la réponse de cs_bultez
Messages postés
363
Date d'inscription
mercredi 18 mai 2005
Dernière intervention
29 janvier 2007
0
Merci
Bonjour et merci pour ta réponse rapide !!

C'est bien une tableau <table> pré-remplit avec des données, que l'on modifie à souhait. Mais par défaut, je ne veux pas que mes cases soient des input, mais des cases normales, elles ne deviennent des input que quand on double-clique dessus ...

J'avais pas pensé au fait de faire directement un formulaire comme ça. Peut-être je peux m'en inspirer en mettant des champs input hidden ...

Je vais voir ça :)
Commenter la réponse de cs_chamallow
Messages postés
13619
Date d'inscription
jeudi 13 février 2003
Dernière intervention
15 octobre 2013
0
Merci
   >>je ne veux pas que mes cases soient des input, mais des cases normales, 
   >>elles ne deviennent des input que quand on double-clique dessus 
      joue plutôt avec disabled et/ou readonly.
      ( et un peu de css pour la présentation )
      c'est bien plus simple, à mon humble avis.
<hr />
            Cordialement    Bul    [
mon Site
]    [
M'écrire
]
<hr />
Commenter la réponse de cs_bultez
Messages postés
363
Date d'inscription
mercredi 18 mai 2005
Dernière intervention
29 janvier 2007
0
Merci
Je sais, tu me l'as déjà dis dans un de mes posts précédemment, mais on aimerait éviter cela pour diverses raisons. C'est pour ça que ça ne devient des input pour la saisie que lors d'un double clic ...
Commenter la réponse de cs_chamallow
Messages postés
13619
Date d'inscription
jeudi 13 février 2003
Dernière intervention
15 octobre 2013
0
Merci
un ch'tit exemple ?

 ----

 à toi de finaliser et de d'adapter en fonction de tes goûts...

<hr />
            Cordialement       Bul    [mon Site]    [M'écrire]
<hr />
Commenter la réponse de cs_bultez
Messages postés
13619
Date d'inscription
jeudi 13 février 2003
Dernière intervention
15 octobre 2013
0
Merci
>>mais on aimerait éviter cela pour diverses raisons.
   je ne vois pas pourquoi... mais
   modifier le innerHTML du TD ( et à mon humble avis, ça n'apportera rien de plus )   
<hr />
      Cordialement    Bul    [
mon Site
]    [
M'écrire
]
<hr />
Commenter la réponse de cs_bultez
Messages postés
2382
Date d'inscription
lundi 4 février 2002
Dernière intervention
29 décembre 2012
0
Merci
Je pense ke le monsieur fait allusion à cette page..
http://olance.developpez.com/articles/web/javascript/modification-inline/exemple/

S.
Commenter la réponse de syndrael
Messages postés
363
Date d'inscription
mercredi 18 mai 2005
Dernière intervention
29 janvier 2007
0
Merci
Oui ça ressemble au lien donné Mais c'est surtout que la manière de procédé (sans input par défaut) a été validée.
Je vais pas m'éterniser là-dessus parce qu'on va tourner en rond C'est juste que pour notre cas et pour les personnes concernées, on a trouvé que c'était "mieux", maintenant c'est vrai que y'a plus simple et sûrement mieux !!

Enfin bref, je vais voir si je peux me débrouiller avec des input hidden, c'est peut-être pas super, mais bon ...
Commenter la réponse de cs_chamallow
Messages postés
363
Date d'inscription
mercredi 18 mai 2005
Dernière intervention
29 janvier 2007
0
Merci
J'ai essayé avec des champs input cachés :

echo '<TR id="'.substr($cle,7).'"><TD>'.$elt['designation'].'</TD><TD>'.$elt['qteCommandee'].'</TD><TD headers="qtePosee" ondblClick="javascript:changeEtatCase(this);">'.$tabBase['rep|'.substr($cle,7)]['qtePosee'].'</TD><TD>'.$elt['prixUnitaireHT'].'</TD><TD>'.$prixHTCalcule.'</TD><TD headers="fte" ondblClick="javascript:changeEtatCase(this);">'.$tabBase['rep|'.substr($cle,7)]['fte'].'</TD><TD headers="totalFTE">'.round($totalCalcule,2).'</TD></TR>';

J'essaye donc de changer la valeur des champs cachés dans la fonction javascript changeEtatCase.
document.getElementsByName("saisie['qte"+document.getElementById('tabFacture').rows[cellule.parentNode.rowIndex].id+"']").value = valeur;

(valeur est la valeur entrée dans le tableau).

Le problème c'est que quand je passe dans la fonction pour changer le premier champ caché (celui dont le nom commence par saisie["qte ...), et que je fais un alert de la valeur de ce champ, il m'affiche la bonne chose. Ensuite quand je passe dans la boucle pour l'autre champ caché, il me dis que le premier est undefined !! Je vois pas trop pourquoi d'ailleurs ...
Commenter la réponse de cs_chamallow
Messages postés
363
Date d'inscription
mercredi 18 mai 2005
Dernière intervention
29 janvier 2007
0
Merci
J'ai compris mon erreur
J'écrasais mon champ input en enregistrant la valeur de la saisie dans la case du tableau correspondante. Voilà, j'arrive bien à récupérer la saisie une fois le formulaire validé !!

C'est pas forcément super génial ma façon de faire mais bon je vois pas autrement là ...

Merci pour l'aide !
Commenter la réponse de cs_chamallow
Messages postés
93
Date d'inscription
samedi 29 janvier 2005
Dernière intervention
17 octobre 2008
0
Merci
Bonjour,

Sinon, tu peux regarder du coté de JSON (http://json.org). Ca concerne la sérialisation des objets selon une même norme quelque soit le langage. Je pense que ca peut être plus mieux

@+ Ordinastie
Commenter la réponse de Ordinastie

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.