şimdi 1000 tane verimiz var diyelim tablomuzda ve karşımıza tek tek çıkıyor anasayfada order by random ile
siteye üye olan bir kullanıcı aşağıdan
"bunu bana bir daha gosterme"yi işaretledigi zaman
artık 1000 tane veriden değil 999 tane veriden random çeksin istiyorum
$sql= "table 1 where durum="1" order by random"
gibi normal bir php fonksiyonuna bunu bir daha gosterme seçeneğini nasıl eklerim.
2. bir tablo eklemek mi gerekiyor eklersek tam olarak kodlar nasıl olacaktır.
Bunu bir daha gosterme mantıgı
7
●453
- 25-04-2016, 19:06:20
- 26-04-2016, 12:48:14araştırdım fakat pek olumlu sonuçlar bulamadım
Bunu bana bir daha gösterme ile ilgili tek kullanılan yöntem bu mu?
--
Yani bildirimler mantıgını kendim yaptım fakat herkesin kendi bildirimi ayrı oldugu için durumu 0 dan 1 e güncelledigim zaman olay bitiyor.
Fakat anasayfada herkese açık olan bir paylaşımı kişiye özel bana bir daha gosterme mantıgı ile yapılabilecek alternatif yöntemler yok mu - 26-04-2016, 12:53:16Ben 1000 tane veri için işlem yapmıyorum ama kullanıcı girişi yapılan bir sistem kullanıyorum. id leri array şeklinde session değişkenine atıyorum. Daha sonra karşısına çıkan veriyi görmek istemiyorsa sessiona işlediğim arraydan çıkarıyorum. Tabi bu sadece o oturuma özel oluyor.
Sizin düşüncenizin mantığı üye olsun olmasın herkesin yapabileceği birşeyse bu konuda pek fikrim yok
- 26-04-2016, 17:27:40Bu benim kullandığım kodlar. test scripti için kullanıyorum. Oturum bitene kadar iş görüyor.
Önce $dizi değişkenine id leri atıyorum.
while döngüsü içinde
$SORUID[] = $ID;
ve serialize edip sesion değişkenine atıyorum.
daha sonra bu diziden rastgele sayı seçiyorum.
Seçtiğim sayının karşılığı id yi buluyorum
sonra rastgele gelen sayıyı diziden çıkarıyorum.
Kalan diziyi tekrar serialize edip session değişkeninin değerini düzeltiyorum.
$_SESSION["sorular"] = htmlentities(serialize($SORUID)); $random_keys = array_rand($SORUID,1);// DIZIDEN RASTGELE BIR SAYI SECILIYOR $sorubulid = $dizi[$random_keys];// SECILEN SAYININ KARSILIGI OLAN SORU ID SI ALINIYOR $dizi = array_values(array_diff($dizi, array($dizi[$random_keys])));// KULLANILAN RASTGELE ID DİZİDEN ÇIKARILIYOR $dizi = htmlentities(serialize($dizi)); // DİZİ TEKRAR SERİALİZE EDİLİYOR $_SESSION["sorular"] = $dizi; // SESSION DEĞİŞKENİNE DİZİ EKLENİYOR
Umarım bu işini görür