Erişim izni ve php dosya yolu ile ilgili bir sorun

1 Cevap php

Ben sayfaların erişimini denetlemek için bir index.php kullanın.

Burada mekanizmadır:

Index.php redirects the page to search.php; code: index.php/?page=search the path of search.php is : pages/search.php, search.php includes header.html, body.html etc.

index.php/?page=search parametre ve body.html bu kodu içerir: Şimdi body.html biz kullanarak search.php diyoruz '? index.php/?page=search?query='.quote_replace(addmarks($query)). Siz ikiniz vardır görebilirsiniz. Ve sadece bu sorun.

I search.php göz attığınızda, o url görüntüler: xxx.com/?page=search.

I search.php ise aslında body.html düğmeyi tıkladığınızda, xxx.com/index.php/?query=&search=1 url görüntüler.

Bu şekilde, göz sadece sayfa index.php gösterilecek. Ama search.php arama sonucunu görüntülemek istediğiniz, ve xxx.com/?page=search/?query=&search=1 göstermesi gerekir. Ancak /?page=search kaybolur ve /index.php burada gözükür görebilirsiniz.

Üzgünüm, durumu karmaşık ve ben çok iyi tarif yoktur. Eğer çok iyi anlayamadık, ben açıklayacağım.

Yani, bu konuda herhangi bir tavsiye var mı? Çok teşekkürler.

1 Cevap

Eğer bir URL argüman olarak (örneğin {[) (0]} gibi) bir dize kullanmak istiyorsanız, artık böyle bir ? olarak special charachters içerecek şekilde kodlamak gerekir ve &. Bunun için urlencode() PHP function kullanın:

urlencode("search/?query=findme&search=1")

Bu güvenli bir URL argüman olarak dahil edilebilir şu dizeyi verecektir:

search%2F%3Fquery%3Dfindme%26search%3D1

Ilk dizesi oluşturmak için, çok benzer bir şey, yani bütün argümanları kodlamak gerekir. İşte http_build_query() fonksiyon tuşları ve değerleri ile bir dizi alır, hangi yararlı olabilir, hepsi kodlar ve = ve & karakterleri gerekli ekler:

http_build_query(array("query" => "find&me", "search" => "1"))

hangi verimleri

query=find%26me&search=1