PHP urlencode () teyel? SID = xxx ...

2 Cevap php

Ben çıkış için basit bir bağlantı çalışıyorum.

Bu harika çalışıyor:

$url = 'http://www.google.com';
echo $url;

Bu büyük işe yaramazsa:

$url = 'http://www.google.com';
echo urlencode($url);

İkinci örnek nedense URL sonuna üzerine "? SID = xxx" tacks. Bunu nasıl oluyor engellerim?

Not: URL oluşturmak için kod masum korumak için değiştirildi.

2 Cevap

URL kodlamak için () urlencode kullanmak istemiyorum, sen, böyle bir URL sona erecek

http% 3A% 2F% 2Fwww.google.com

Cookie eksik olduğunda bu SID ekler böylece PHP, bu göreli bir URL gibi görünüyor.

urlencode () sorgu dizesi parametrelerini kodlamak için kullanılır ama edilmelidir URL kendisi.

Bu bir oturum çerezi yokluğunda bir GET değişkeni ile oturum kimliği ekler PHP'nin otomatik link yeniden yazımı var, urlencode() nin suçu değil.

Ben bu onlar devre dışı çerezleri varsa istemci tarafında oturumları devam etmek gereklidir korkuyorum.

Otomatik olarak yapmak için ayardır session.use_trans_sid. Daha detaylı bilgi here.