|
La Communauté Webmaster 
| Pages: [1] |
 |
|
|
|
Auteur |
Sujet: Passer une variable Javascript dans PHP (Lu 7520 fois) |
|
 |
Passer une variable Javascript dans PHP
« sur: le 28-06-2013 a 12:42:22 » |
|
Flomaluso
Membre récent

Hors-Ligne
Messages: 17

|
Salut tout le monde 
Je m'excuse par avance si je me suis trompé de partie du forum pour poster ce sujet. J’hésitais entre PHP/MySQL et Javascript / DOM / Ajax et j'ai finalement décidé de le poster ici.
Alors voilà mon problème, après plusieurs recherches sur internet et plusieurs tests, je n'ai toujours pas réussi à récupérer une variable javascript et l'insérer dans du PHP. Je sais que JavaScript et un langage coté utilisateur et PHP coté serveur, mais visiblement il y en à qui arrivent à récupérer la valeur de la variable du script et de l'utiliser avec PHP.
Plus concrètement, j'ai un script qui demande leur prénom au gens afin de rendre un peu le site interactif puisqu'il leur dit bonjour et j'aimerais pouvoir utiliser le nom qu'il rentre avec PHP. (Sachant aussi que se prénom et enregistré dans un cookies.)
Voici le script pour ceux qui veulent :
<SCRIPT language="JavaScript" title="Bonjour">
var caution = false function setCookie(name, value, expires, path, domain, secure) { var curCookie = name + "=" + escape(value) + ((expires) ? "; expires=" + expires.toGMTString() : "") + ((path) ? "; path=" + path : "") + ((domain) ? "; domain=" + domain : "") + ((secure) ? "; secure" : "") if (!caution || (name + "=" + escape(value)).length <= 4000) document.cookie = curCookie else if (confirm("Cookie exceeds 4KB and will be cut!")) document.cookie = curCookie } function getCookie(name) { var prefix = name + "=" var cookieStartIndex = document.cookie.indexOf(prefix) if (cookieStartIndex == -1) return null var cookieEndIndex = document.cookie.indexOf(";", cookieStartIndex + prefix.length) if (cookieEndIndex == -1) cookieEndIndex = document.cookie.length return unescape(document.cookie.substring(cookieStartIndex + prefix.length, cookieEndIndex)) } function deleteCookie(name, path, domain) { if (getCookie(name)) { document.cookie = name + "=" + ((path) ? "; path=" + path : "") + ((domain) ? "; domain=" + domain : "") + "; expires=Thu, 01-Jan-70 00:00:01 GMT" } } function fixDate(date) { var base = new Date(0) var skew = base.getTime() if (skew > 0) date.setTime(date.getTime() - skew) } var now = new Date() fixDate(now) now.setTime(now.getTime() + 31 * 24 * 60 * 60 * 1000) var name = getCookie("name") if (!name) name = prompt("Entrez Votre Prénom:", "Mon prénom") setCookie("name", name, now) document.write("Bonjour" + name + "! = )")
</SCRIPT> |
|
Merci par avance pour votre aide = ) A très bientôt, Flo |
|
|
|
|
|
|
 |
Re:Passer une variable Javascript dans PHP
« Répondre #1 sur: le 28-06-2013 a 15:21:02 » |
|
|
|
|
 |
Re:Passer une variable Javascript dans PHP
« Répondre #2 sur: le 29-06-2013 a 10:55:24 » |
|
|
|
|
 |
Re:Passer une variable Javascript dans PHP
« Répondre #3 sur: le 29-06-2013 a 11:23:48 » |
|
|
|
|
 |
Re:Passer une variable Javascript dans PHP
« Répondre #4 sur: le 29-06-2013 a 14:09:29 » |
|
Flomaluso
Membre récent

Hors-Ligne
Messages: 17

|
D'accord, merci beaucoup =)
Donc logiquement si j'ai bien compris, je dois mettre ceci comme code :
<?php if (!isset($_POST['nom_de_l_utilisateur']) and !isset($_COOKIE['nom_de_l_utilisateur'])){ /* Affichage du formulaire de demande du nom */ } ?>
<?php if (!empty($_POST['nom_de_l_utilisateur'])){ setcookie($name='nom_de_l_utilisateur', $value='$_POST['nom_de_l_utilisateur']', $path='/', $secure=false, $HTTPOnly=false) } ?>
<?php if (isset($_COOKIE['nom_de_l_utilisateur'])){ echo 'Bonjour'.$_COOKIE['nom_de_l_utilisateur']; } ?>
|
|
Le problème est que sa ne me demande pas d'entrer mon prénom et en plus, cela me retourne une erreur : Parse error: syntax error, unexpected 'nom_de_l_utilisateur' (T_STRING) in ...
Donc est ce que je me suis trompé dans la ligne du cookie?
Je suis désolé, mais je connais vraiment pas grand chose, j’apprends sur le tas. A bientôt, Flo |
|
|
|
|
 |
Re:Passer une variable Javascript dans PHP
« Répondre #5 sur: le 29-06-2013 a 15:09:42 » |
|
GuillaumeRoos
P'tit nouveau
 
Hors-Ligne
Sexe: 
Messages: 122

|
En fait, déjà, il faut remplacer la note "/* Affichage du formulaire de demande du nom */" par un formulaire de demande du nom en html, pour pouvoir récupérer le contenu du champ 'nom_del_utilisateur' par la variable $_POST.
Ensuite, dans la ligne setcookie, il ne faut pas mettre $name='nom_de_l_utilisateur', $value=..., il faut juste mettre 'nom_de_l_utilisateur', $_POST['nom_de_l_utilisateur']...
Il faudrait aussi ajouter la date d'expiration dans le cookie et puis tu avais oublié un ';' à la fin de la ligne.
Ça devrait donner un truc comme ça (pour un cookie avec une durée de vie d'un mois) :
<?php if (!isset($_POST['nom_de_l_utilisateur']) and !isset($_COOKIE['nom_de_l_utilisateur'])){ echo ' <form method="post" action="#"> <p>Indiquez votre nom :</p> <input type="text" name="nom_de_l_utilisateur" /><br /> <input type="submit" name="submit" value="Envoyer" /> </form> '; }
if (!empty($_POST['nom_de_l_utilisateur'])){ setcookie('nom_de_l_utilisateur', $_POST['nom_de_l_utilisateur'], time()+(60*60*24*30), '/', false, false); echo 'Bonjour '.$_POST['nom_de_l_utilisateur']; }
if (isset($_COOKIE['nom_de_l_utilisateur'])){ echo 'Bonjour '.$_COOKIE['nom_de_l_utilisateur']; } ?>
J'ai rajouté un echo du $_POST nom_de_l_ut... après le setcookie parce que la page ne prend pas en compte le cookie au premier tour.
Bon courage pour la suite. |
Guillaume Roos - Web Designer, développeur et illustrateur indépendant http://www.guillaumeroos.com siret : 513 379 420 00013 |
|
|
 |
Re:Passer une variable Javascript dans PHP
« Répondre #6 sur: le 04-07-2013 a 19:08:56 » |
|
|
|
|
 |
Re:Passer une variable Javascript dans PHP
« Répondre #7 sur: le 04-07-2013 a 19:14:32 » |
|
|
|
|
| Pages:
[1] |
|
|
|
| |
|
|