Question

En utilisant ce code

var sw = window.screen.width;
$.post("http://www.example.com/track.php", {result: sw
}, "html");

et $ _SERVER [ 'résultat']; dans le serveur que je suis en train d'obtenir la largeur de sreen mais il ne fonctionne pas. Il est quelque chose de mal avec le « résultat ». Je suis nouveau en Javascript et JQuery ...

http://api.jquery.com/jQuery.post/

Était-ce utile?

La solution

$_SERVER contient des variables du serveur, qui est, des choses comme le système d'exploitation, l'URL referrer, chemins d'accès aux différents dossiers sur le serveur.

Qu'est-ce que vous cherchez au lieu est soit le tableau de $_POST, le tableau de $_GET, ou le tableau de $_REQUEST. Je pourrais être une lapalissade, mais voici ce qu'ils contiennent:

  • $_POST contient une liste de toutes les variables POSTée au script.
  • $_GET contient une liste de toutes les variables dans la chaîne de requête (par exemple: someScript.php?x=1&y=2)
  • $_REQUEST contient une fusion de $_POST, $_GET et $_COOKIE (habituellement dans cet ordre). Je ne recommande pas d'utiliser ceci:. Vous devriez savoir les méthodes que vous utilisez pour accéder à des variables dans votre script et utiliser ce tableau spécifique

Dans votre cas, vous devez jeter un oeil à l'ensemble de $_POST. Il est toujours à portée de main pour exécuter cette fois:

print_r($_POST);

Cela vous montrera tout affiché à cette page.

Autres conseils

La fonction .post jQuery $ envoie une demande de poste au serveur, ce qui signifie pour accéder à la valeur de « résultat », vous devez l'obtenir à partir de $ _POST superglobale.

Essayez $ _POST [ 'résultat'] au lieu de $ _SERVER [ 'résultat'].

Ces descriptions peuvent aider (source: http://www.nusphere.com/php/ php_superglobals.htm ):

  • $ _ POST - Le $ _POST superglobales représente les données envoyées au PHP par le protocole HTTP POST. C'est normalement une forme avec un procédé de POST.
  • $ _ SERVER - La variable $ _SERVER représente des données disponibles à un script PHP à partir du serveur Web lui-même (pas ce que vous cherchez)
  • $ _ REQUEST - Le $ _REQUEST superglobales est une combinaison de $ _GET, $ _POST et $ _COOKIE (serait travail, mais pourquoi GET recherche et COOKIE quand vous connaissez la valeur est en poste?)

Essayez de faire:

echo $_POST['result'];

Utilisez $_REQUEST['result']

  

$_SERVER est une information de réseau contenant comme en-têtes, des chemins , et les lieux de script. Les entrées de ce tableau sont créés par le serveur web. Il n'y a aucune garantie que chaque serveur Web fournira un de ces; les serveurs peuvent omettre certains, ou de fournir d'autres qui ne figurent pas ici.

     

$_REQUEST est un tableau associatif qui contient par défaut le contenu de $_GET, $_POST et $_COOKIE.

La bonne façon est d'utiliser $_POST['result'], comme suggéré par d'autres ici.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top