Passage de variables JavasScript vers PHP

Fermé
bernard_26000 Messages postés 6 Date d'inscription mardi 9 décembre 2014 Statut Membre Dernière intervention 24 décembre 2014 - Modifié par bernard_26000 le 9/12/2014 à 05:05
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 - 10 déc. 2014 à 10:09
Bonjour,

je suis en train de faire un petit programme où le visiteur peut insérer un texte, le modifier par la taille de la police ou par la couleur...
Ca je suis arrivé à le faire, mais là où je coince c'est pour faire passer les variables javascript vers une autre page pour pouvoir les exploiter sous forme de PHP
Du genre afficher ce qu'à écrit le visiteur, insérer dans une BDD....
Pour ma fonction j'ai ceci :

<script language="javascript"> 
function envoyerDonneesServeur(){
var zone = document.getElementById("zone");
$.post("traitement.php", {
fontSize: zone.style.fontSize,
fontColor: zone.style.color,
text: zone.textContent

})
}
</script>


Je ne sais pas si c'est possible, je crois que oui pour l'avoir lu dans des forums.
J'ai essayé plusieurs solutions pour faire passer ces variables dans un form...Mais je plante à chaque fois.
Je suppose aussi qu'il est nécessaire de faire passer toutes ces variables dans des hidden

Bonne journée et merci d'avoir passé un peu de temps sur mon topic




A voir également:

4 réponses

jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
9 déc. 2014 à 08:27
Bonjour

Avant de t'en dire plus. ... dis moi si tu utilises jquery.



0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
9 déc. 2014 à 09:30
Je ne sais pas si c'est possible, je crois que oui pour l'avoir lu dans des forums.
J'ai essayé plusieurs solutions pour faire passer ces variables dans un form...Mais je plante à chaque fois.
Je suppose aussi qu'il est nécessaire de faire passer toutes ces variables dans des hidden


Oui c'est possible..

Tu peux, en effet, utiliser un FORM, dans lequel tu mettrais des input Hidden contenant tes variables
document.getElementById("id_un_input_hidden").value = fontSize;


Mais tu peux aussi, comme tu as commencé, à le faire en AJAX.
La syntaxe ( $.post...) que tu as écrite dans ton code est une de celle utilisé avec JQUERY. (d'où ma première question....).

Si tu n'utilises pas JQUERY, tu peux aussi le faire en "pure" javascript. (le xmlhttprequest)
Voir ici : https://www.commentcamarche.net/faq/18745-utilisation-de-l-objet-xmlhttprequest




0
bernard_26000 Messages postés 6 Date d'inscription mardi 9 décembre 2014 Statut Membre Dernière intervention 24 décembre 2014
10 déc. 2014 à 05:34
Merci Jordane

En fait je crois que je me suis enflammé et surtout éparpillé.
Je pense qu'avec mon niveau j'ai intérêt à rester sur du simple que je comprenne.
En conclusion je vais faire en sorte de déclarer mes variables, les transmettre dans un "form" et les récupérer en variables PHP pour exploitation.
Tout d'abord les variables, est que j'ai une chance que ceci fonctionne ?
<script language="javascript"> 
document.getElementById("zone");{

var fontSize = zone.style.fontSize;
var fontColor = zone.style.color;

// , etc... avec toutes les autres données qui m'intéressent

}
</script>

Variables "var fontSize" que je mettrai dans un input du genre :
<form name="" action="traitement.php" method="post">
<input type="hidden" name="fontSize" value="" />
<input type="submit" value="envoyer">
</form>

et reprendre tout ça dans ma page traitement.php
<?php 

if(isset($_POST['fontSize'])){

$champ = $_POST['fontSize'];

}
echo $champ ;
?>


Bon tout ça c'est ce que j'aimerai faire et bien sur .... ca ne marche pas :(
Si on peut me dire où je me plante.... peut être partout

Merci
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
Modifié par jordane45 le 10/12/2014 à 10:10
Bonjour,

Il te manque une étape ^^

Déjà .. dans ton FORM (mettre des ID à tes Input )
<form name="" action="traitement.php" method="post">
  <input type="hidden" name="fontSize"  id="fontSize"  value="" >
  <input type="hidden" name="fontColor"  id="fontColor"  value="" >
<!-- Etc.. -->
  <input type="submit" value="envoyer">
</form>


Puis dans ton Javascript : Mettre tes variables DANS les input :

<script language="javascript"> 
function remplirInput () {
 document.getElementById("zone");
      var fontSize = zone.style.fontSize;
      document.getElementById('fontSize').value = fontSize;
      var fontColor = zone.style.color;
      document.getElementById('fontColor ').value = fontColor; 
      
      // , etc... avec toutes les autres données qui m'intéressent

 }
  </script>


Et si tu veux que ton script JS se lance au chargement de la page tu places en bas de ta page :
<script language="javascript"> 
   remplirInput();
</script>


Avant de poser une question, merci de lire la charte du site.
Cordialement, Jordane
0