JQuery kullanarak ekran genişliği Gönderme

4 Cevap php

Bu kodu kullanarak

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

ve $ _SERVER ['sonuç']; sunucu ben sreen genişliğini almak için çalışıyorum ama çalışmıyor. Bu "sonuç" ile yanlış bir şeydir. Ben JavaScript ve jQuery yeniyim ...

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

4 Cevap

$_SERVER sunucu değişkenleri içeren yani, işletim sistemi, yönlendirme URL, sunucu üzerinde çeşitli klasörlerin yolları gibi şeyler.

Bunun yerine ne aradığınız $_POST dizisi, $_GET dizisi, ya $_REQUEST diziniz olduğunu. Ben burada açık belirten, ama burada içerdikleri ne olabilir:

  • $_POST script POSTed tüm değişkenlerin bir listesini içerir.
  • $_GET sorgu dizesinde tüm değişkenlerin bir listesini içerir (örn: someScript.php?x=1&y=2)
  • $_REQUEST $_POST, $_GET ve $_COOKIE (genellikle bu sırayla) bir birleştirme içerir. Ben bu kullanmanızı tavsiye etmiyoruz: Eğer know yöntemler size komut içine değişkenleri almak ve özellikle bu diziyi kullanmak için kullandığınız gerekir.

Sizin durumda, $_POST dizi bakmak gerekir. O zamanlar bu çalıştırmak için her zaman kullanışlı:

print_r($_POST);

Bu size o sayfaya gönderilen her şeyi gösterecektir.

JQuery $. Sonrası işlevi "sonuç" değerini erişmek anlamına gelir, sunucuya bir post isteği gönderir, sen $ _POST superglobalden almak gerekir.

Yerine $ _SERVER ['sonuç'] ve $ _POST ['sonuç'] sahipsiniz.

Bu açıklamalar yardımcı olabilir (kaynak: http://www.nusphere.com/php/php_superglobals.htm):

  • $_POST- The $_POST Superglobal represents data sent to the PHP script via HTTP POST. This is normally a form with a method of POST.
  • $_SERVER- The $_SERVER Superglobal represents data available to a PHP script from the Web server itself (not what you're looking for)
  • $_REQUEST- The $_REQUEST Superglobal is a combination of $_GET, $_POST, and $_COOKIE (would work, but why search GET and COOKIE when you know the value is in POST?)

Bunu deneyin:

echo $_POST['result'];