SORU
3 EYLÜL 2009, PERŞEMBE


AJAX POST ve Artı İşareti ( ) -- Nasıl kodlanır?

Bir PHP komut dosyası için AJAX ile bir form alanı içeriğini Gönderme ve Javascript kodlama(field_contents) kullanıyorum. Sorun herhangi bir artı işaretleri çıkarılmış ve boşluk ile değiştirilir. Nasıl güvenli bir şekilde alabilir miyim '' artı işareti ve uygun 'deşifre' PHP tarafında mı? sonra kodlamak

CEVAP
3 EYLÜL 2009, PERŞEMBE


Encodeurıcomponent() kullanımı PHP JS ve doğru değerler almalısınız.

$_GET, $_POST $_REQUEST erişim PHP, önceden sorunsuz olan değerler alınıyor. not:

Örnek:

JS: senin

// url encode your string
var string = encodeURIComponent(' '); // "+"
// send it to your server
window.location = 'http://example.com/?string=' string; // http://example.com/?string=+

Sunucu: sizin

echo $_GET['string']; // " "

Url kodlanmış verileri içeren sadece ham bir HTTP isteği.

Bir isteği ALMAK için URI. $_SERVER['REQUEST_URI'] $_SERVER['QUERY_STRING'] Bu alabilirsiniz. , file_get_contents('php://stdin') urlencoded bir YAZI için

NB:

decode() tek bayt kodlanmış tek karakter için çalışır. UTF-8 tam kapsamlı için çalışmaz.

örneğin:

text = "\u0100"; // Ā
// incorrect
escape(text); // %u0100 
// correct
encodeURIComponent(text); // "Ā"

Not: "Ā" eşdeğerdir: escape('\xc4\x80')

UTF-8 " temsil eden bayt sırası (\xc4\x80). Eğer encodeurıcomponent kullanırsanız) sunucu tarafında UTF-8 alıyor. Aksi takdirde PHP bozmayı olacak kodlama.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • DONFANTASTICKYPESS

    DONFANTASTIC

    1 Temmuz 2007
  • Jordie Jordan

    Jordie Jorda

    27 Ocak 2008
  • videoisunrelated

    videoisunrel

    5 Mart 2009