v2.5.2
Giriş yap

PHP GET METODU İLE URL YARDIM

bygndgr
1,752 defa görüntülendi ve 1 kişi tarafından değerlendirildi

Merhaba Sorum şu GET ile işlem çağırdığımda

?ornek=1 linke tıkladığımda .com/deneme-sayfası?ornek=1 oluyor
?ornek=2 linke tıkladığımda .com/deme-sayfası?ornek=2 oluyor

şimdi urlde soru işareti yoksa ilk önce örnek 1 ve ya 2 hangisine tıklarsa urlde ilk önce soru işareti çıkartsın istiyorum.

bana acil yardımcı olurmusunuz ? günlerdir araştırıyorum takıldım.

örnek olarak https://www.lescon.com.tr/erkek-spor-performans/ sitesinde listeleme ve sayfalamayı test edebilirsiniz.

Cevap yaz
Cevaplar (17)
bygndgr
1242 gün önce

qplot hocam örnek kod belirtebilirmisiniz ?

qplot
1242 gün önce

sessionla yap cokta zorlanıyorsan bu sayfada sessiona ata baska sayfaya gecerse sessionları null yap

bygndgr
1242 gün önce

tayfun hocam dediğiniz mantığı normalde yapıyorum istediğim gibi sorunsuz çalışıyor lakin kullanıcı ilk önce sayfalamada ikinci sayfaya gittiğinde listelemeyi çalıştırırsa sayfa iki iptal oluyor sayfa bir oluyor
ben size belirttiğim sitedeki gibi olsun istiyorum ilk önce listelemeyi kullanırsa daha sonra sayfalamayı kullanırsa ?pagination=2&listeleme=tarih olsun istiyorum veya ilk önce listelemeyi kullanırsa
?listeleme=tarih&pagination=2 olsun istiyorum sorunum bu ilk önce hangi GET i çalıştırırsa o GET methodunun başında soru işareti ? olsun istiyorum.

	<a href="Category/<?php echo seo($sayfa_sonuc["id"]).'-'.seo($sayfa_sonuc["adi"]); ?>?sort=new_by_date" <?php if($_GET['sort'] == "new_by_date") {?> selected="selected" <?php }?>>TARİHE GÖRE YENİ</a>	
	<a href="Category/<?php echo seo($sayfa_sonuc["id"]).'-'.seo($sayfa_sonuc["adi"]); ?>?sort=old_by_date" <?php if($_GET['sort'] == "old_by_date") {?> selected="selected" <?php }?>>TARİHE GÖRE ESKİ</a>	
	<a href="Category/<?php echo seo($sayfa_sonuc["id"]).'-'.seo($sayfa_sonuc["adi"]); ?>?sort=popular_products" <?php if($_GET['sort'] == "popular_products") {?> selected="selected" <?php }?>>POPÜLER ÜRÜNLER</a>	
	<a href="Category/<?php echo seo($sayfa_sonuc["id"]).'-'.seo($sayfa_sonuc["adi"]); ?>?sort=by_name_az" <?php if($_GET['sort'] == "by_name_az") {?> selected="selected" <?php }?>>İSME GÖRE A>Z</a>	
	<a href="Category/<?php echo seo($sayfa_sonuc["id"]).'-'.seo($sayfa_sonuc["adi"]); ?>?sort=by_name_za" <?php if($_GET['sort'] == "by_name_za") {?> selected="selected" <?php }?>>İSME GÖRE Z>A</a>	
	
	
	
	
			<!-- Sayfalama -->	
	<?php if($toplam_icerik > 6){ ?>
		<ul class="pagination"> 
			<?php if ($previous = $page -1){?>
				<li class="page-item">
					<a class="page-link" href="Category/<?php echo seo($sayfa_sonuc["id"]).'-'.seo($sayfa_sonuc["adi"]); ?>?pagination=<?php echo $previous;?>">
						<i class="fas fa-angle-left"></i>
					</a>
				</li>
			<?php } else {?>
				<li class="page-item">
					<a class="page-link">
						<i class="fas fa-angle-left"></i>
					</a>
				</li>
			<?php }?>		
			<li class="page-item active"><a class="page-link"><?php echo $page; ?></a></li>
			<?php if ($oncekisayfa = $page +1){?>
				<li class="page-item">
					<a class="page-link" href="Category/<?php echo seo($sayfa_sonuc["id"]).'-'.seo($sayfa_sonuc["adi"]); ?>?pagination=<?php echo $oncekisayfa;?>">
						<i class="fas fa-angle-right"></i>
					</a>
				</li>
			<?php } else {?>
				<li class="page-item">
					<a class="page-link">
						<i class="fas fa-angle-right"></i>
					</a>
				</li>
			<?php }?>							
		</ul>										
	<?php }?>
	<!-- Sayfalama -->	
	
	sorunum bu sanırım anlamadınız sorunumu
tayfunerbilen
1242 gün önce

bak şöyle düşün linki oluştururken tüm olasılıklarına göre oluşturabilirsin örneğin;

<a href="xxx.com/linkblabla?sayfa=<?=$_GET['sayfa']?>&listeleme=<?=$_GET['listeleme']&abc=<?=$_GET['abc']?>?>">Link</a>

bu mantıkta başta olmuş sonda olmuş fark etmez değeri varsa listelenir, sayfalama içinde bu parametrelerini koy, oluşturduğun link yapısı içinde, formun içinde, takıldığın nokta olman gereken nokta değil sorun orada başlıyor :)

bygndgr
1242 gün önce

hocam kurumsal firmamaa websitesinde ürünler bölümünde lisyelemeyi ziyaretco yapabilsin istiyorum lakin sayfalamayi kullaninca ?sayfalama=122&listeleme=tarih yapamiyorim ilk once hangi sistemi kullanirsa ilk basta ?listeleme veya ?sayfalama yapamiyorum
sorunum bu form ile get istegimde sorun yok icerik listelemedede sorun yok tek sorunum ? - & isaretlerini getirmekte

tayfunerbilen
1242 gün önce

en basiti form içinde get isteği atmakla olur

<form action="" method="get">
    <input type="hidden" name="ornek" value="1" />
    <button type="submit">Ekle</button>
</form>

<form action="" method="get">
    <input type="hidden" name="ornek" value="2" />
    <button type="submit">Ekle</button>
</form>

bu zaten gerekli eklemeyi otomatik yapacak ancak neden böyle bir şeye ihtiyacın oldu onu anlayamadım :)

bygndgr
1243 gün önce

webdevyusuf hocam tarihe göre siralama yaparken get methodunu kullanıyorum. oyuzden sayfalama ile kullanmaya calistigimda olmuyor

tarihe gore siralama
hite gorw siralama
isme gore siralama
yapmaya calisiyorum

bygndgr
1243 gün önce

makifgokce hocam aksam test edecegim tesekkurler ♥️

webdevyusuf
1243 gün önce

Bu şekilde neden yapmak isteyesinki onun yerine direk https://site_ismi.com/ornek/1 şeklinde yap daha mantıklı değil mi?

makifgokce
1243 gün önce
if(isset($_GET) && !empty($_GET)){ // GET ile gelen değer varsa
	$query = [];
	if(isset($_GET['page']) && !empty($_GET['page'])){ // GET ile key i page olan bir değer varsa
		$query['page'] =  $_GET['page'];
	}
	
	if(isset($_GET['question']) && !empty($_GET['question'])){ // GET ile key i question olan bir değer varsa
		$query['question'] =  $_GET['question'];
	}
	
	if(isset($_GET['category']) && !empty($_GET['category'])){ // GET ile key i category olan bir değer varsa
		$query['category'] =  $_GET['category'];
	}
	if(!empty($query)){
		echo '?' . http_build_query($query);
	}
}

link verdiğin kısma http_build_query den gelen parametreyi eklersin.
örnek olarak ?id=1 olan bir link vereceksen.
<a href="http://example.com/search?id=1&<?=http_build_query($query);?>">Link</a>
bunu bi fonsiyonda halledersin ben örnek olması açısından yazdım.

bygndgr
1243 gün önce

tahahocam .htaccess ile ilgili degil siz anlamadiniz soruyu bende anlatamadim nasil arayacagimi bile bulamadim ☺️

bygndgr
1243 gün önce

makifgokce hocam ornek kod yazabilirmisiniz ?

bygndgr
1243 gün önce

şöyle anlatayım kullanıcı ilk önce sayflamayi kullanirsa daha sonra listelemeyi kullanirsa bozulmasin ?pagi=12&short=data gibi

tahakocak
1243 gün önce

Bunu htaccess ile yapabilirsiniz.
Tabii, konuyu doğru anlayabildiysem...

makifgokce
1243 gün önce

Senin aradığın fonksiyon bu https://www.php.net/manual/tr/function.http-build-query.php

    $query = [
    	'page' => 2,
    	'question' => 'abc',
    	'category'	=> 'cloth'
	];
	echo '?' . http_build_query($query);
	
	// Output: ?page=2&question=abc&category=cloth
bygndgr
1243 gün önce

sanırım anlatamadım kendimi

qplot
1243 gün önce

aynı urunlerı farklı sekılde sepetede eklıyor :)