lostyazilim
tr.link

Fazla Soru işaretini kaldırma ?

9 Mesajlar 1.078 Okunma
acebozum
tr.link

silenthilll silenthilll WM Aracı Kullanıcı
  • Üyelik 29.09.2011
  • Yaş/Cinsiyet 39 / E
  • Meslek öğrenci
  • Konum Manisa
  • Ad Soyad M** K**
  • Mesajlar 699
  • Beğeniler 61 / 126
  • Ticaret 1, (%100)



Resimde görüldüğü üzere
http://127.0.0.1/calisma/?veri=1?°er=2 tarayıcı linkde iki soru işareti olmakta bunu nasıl engellerim şöyleki

anasayfadan get ile link veriyorum:
http://127.0.0.1/calisma/?veri=1

sonra açılan sayfada birdaha get değeri atıyorum yani ?°er=2
bu seferde oluyor http://127.0.0.1/calisma/?veri=1?°er=2

bu sefer sırf ikinci soru işaretinden dolayı sayfa boş gözüküyor. Diyebilirsiniz ?°er=2
de sende soru işareti koyma. O zamanda direk çalışma sayfasına girmeden °er=2 çalıştırsam yani http://127.0.0.1/calisma/°er=2 soru işareti olmadığından get değerini görmüyor. Bu soru işaretini 2 tanede de olsa o link girdiğinde tek soru işaretine dönüştürecek bir yöntem varsa gösterebilirmisiniz?
 

 

wmaraci
reklam

Flawless Flawless Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 25.10.2013
  • Yaş/Cinsiyet 41 / E
  • Meslek Php Coder
  • Konum Antalya
  • Ad Soyad K** I**
  • Mesajlar 476
  • Beğeniler 22 / 87
  • Ticaret 7, (%100)
Siz veri ve deger icin if isset ile kontrol saglarsaniz ?veri de yazsaniz ?deger de yada ikisini birlikte de kontrol edersiniz hangisi set edilmis ise ona göre yorumlayacaktir diye düşünüyorum. Anlattiginizi yanlis anlamadim ise
 

 

silenthilll silenthilll WM Aracı Kullanıcı
  • Üyelik 29.09.2011
  • Yaş/Cinsiyet 39 / E
  • Meslek öğrenci
  • Konum Manisa
  • Ad Soyad M** K**
  • Mesajlar 699
  • Beğeniler 61 / 126
  • Ticaret 1, (%100)
Flawless ben direk link olarak atıyorum if else yok.
 

 

Flawless Flawless Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 25.10.2013
  • Yaş/Cinsiyet 41 / E
  • Meslek Php Coder
  • Konum Antalya
  • Ad Soyad K** I**
  • Mesajlar 476
  • Beğeniler 22 / 87
  • Ticaret 7, (%100)
Peki link ne is yapıyor karsiliginda get ile parametre cekmiyor musunuz gelen veriyi islemek için
 

 

wmaraci
wmaraci

Decimas Decimas WM Aracı Kullanıcı
  • Üyelik 19.04.2015
  • Yaş/Cinsiyet 26 / E
  • Meslek Developer
  • Konum İstanbul Avrupa
  • Ad Soyad E** E**
  • Mesajlar 820
  • Beğeniler 1 / 302
  • Ticaret 1, (%100)
Daha önceden böyle bir durumla karşılaşmıştım, bazen o soru işaretlerini kütüphaneler falan otomatik ekliyor, öntanımlı ifadelerde de olabilir.

Tek yapman gereken URL'de regex ile ikinci bir ? işareti aramak ve ikiye ayırıp ikinci kısımdaki soru işaretlerini temizlemek.


echo $requesturl = "https://{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}";
echo '
';

preg_match_all('/[?]/',$requesturl, $matches, PREG_OFFSET_CAPTURE);

// if there is second question mark
if (isset($matches[0][1][1])) {
// start pos from first match index
$startpos = $matches[0][0][1] + 1;
// total string lenght - start pos
$endpos = strlen($requesturl) - $startpos;
// replaced new url
$newrequesturl = substr($requesturl, 0, $startpos).str_replace('?', null, substr($requesturl, $startpos, $endpos));

print_r($newrequesturl);
// go
header("Location: {$newrequesturl}");
}
?>
silenthilll

kişi bu mesajı beğendi.

no time for caution

silenthilll silenthilll WM Aracı Kullanıcı
  • Üyelik 29.09.2011
  • Yaş/Cinsiyet 39 / E
  • Meslek öğrenci
  • Konum Manisa
  • Ad Soyad M** K**
  • Mesajlar 699
  • Beğeniler 61 / 126
  • Ticaret 1, (%100)
Decimas ben bu işlemleri wordpress içinde yapııyorum header komutuyla sayfayı yönlendirmiyor yanlış olan nedir acaba echo çıktısında evet soru işaretini sildiriyor fakal url yönlendirmiyor.
 

 

silenthilll silenthilll WM Aracı Kullanıcı
  • Üyelik 29.09.2011
  • Yaş/Cinsiyet 39 / E
  • Meslek öğrenci
  • Konum Manisa
  • Ad Soyad M** K**
  • Mesajlar 699
  • Beğeniler 61 / 126
  • Ticaret 1, (%100)
Birde yönlendirme yapmadan direk silme imkanımız yok mu bu sefer sayfa iki kere yükleme yapacak birincide sayfaya girecek ikincisinde soru işaretini temizleyip yönlendirecek.
 

 

Decimas Decimas WM Aracı Kullanıcı
  • Üyelik 19.04.2015
  • Yaş/Cinsiyet 26 / E
  • Meslek Developer
  • Konum İstanbul Avrupa
  • Ad Soyad E** E**
  • Mesajlar 820
  • Beğeniler 1 / 302
  • Ticaret 1, (%100)
silenthilll Bu URL'yi nerede nasıl oluşturuyorsun bilmiyorum, sadece fikir vermesi için yazmıştım. Eğer çok derin detaylara girecek olursak her tarayıcı, her versiyon ve platform header yönlendirmesini desteklemeyebilir. User agent header parse'leyip ona göre takılabilirisn ya da ufak bir js komutuyla yönlendirebilirsin. Seçenekler çok ama benceURL'nin oluştuğu kısımda kullanman daha mantıklı.
 

 

no time for caution

ramazayn ramazayn WM Aracı Kullanıcı
  • Üyelik 11.10.2017
  • Yaş/Cinsiyet 25 / E
  • Meslek Öğrenci
  • Konum Bursa
  • Ad Soyad R** U**
  • Mesajlar 614
  • Beğeniler 19 / 251
  • Ticaret 9, (%100)
Ben url yönlendirme işlemlerini php'de bu şekilde yapıyorum.

if ($insert) {

Header ( "Location : ogrenci.php?durum=ok&ogrenci_id=$ogrenci_id");
exit;

} else {
Header( "Location : ogrenci.php?durum=no&ogrenci_id=$ogrenci_id");
exit;
}

}
 

 

Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al