İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

10da 1 Yükleme Hakkı Verme - Yardım!

garrip

0
İyinet Üyesi
Katılım
28 Aralık 2010
Mesajlar
174
Reaction score
0
Merhaba arkadaşlar,
yapmak istediğim şey;
üye sadece 10 yorum da bir fotoğraf yükleyebilmeli ancak nasıl yapacağımı tam olarak çözemedim

mod ile yaptığımda:

PHP:
<?php
if( mysql_num_rows($a)%10==0 ){
yükle
}
?>

sadece 10 ve katlarında hak veriyor doğal olarak üyenin 20 yorumu olmasına rağmen 2 yerine sadece 1 tane yüklemesine izin veriyor.

bunu nasıl yapabiliriz bir fikri olan, yardımcı olabilecek olan varsa .. !! :(
 
E

Erturk

Misafir
Yorumların tutuldugu tabloda uye id numarası ile kayıt ediliyor değil mi?

Yorumlar tablosunun içeriğini yazar mısınız?

Ekleme: Sanırım bahsettiğin şeyi anladım.

PHP:
<?php
$yorumcu = 18; // Mesaj sayısını görmek istediğin yorumcunun ID numarası
$bak = mysql_query("select count(id) yorumlar where yorumcu='.$yorumcu.'"); // Bu yorumcuya ait olan mesaj sayısını çekiyoruz.
while($e = mysql_fetch_assoc($bak)) {$toplam = $e['count(id)'];} // Yorumcunun mesaj sayısını döndürüp $toplam değişkenine atıyoruz.
$kat = 10; // Hangi sayı katlarında işlem yapacagımızı belirttik.
if($toplam%$kat == 0) { // Toplam sayının $kat degerine bölümünden kalan 0 ise.
$sayi = substr($toplam,0,-1); // Toplam sayının son karakterini silip değişkene atıyoruz.
for($i=1;$i<=$sayi;$i++) { // $i değişkenine 1 verip $sayi degeri kadar döndürüyor ve resim input koyuyoruz.
echo '<input type="file"><br>';
}
} else if($toplam%$kat !=0 and $toplam>$kat) { // Toplam sayının $kat degerine bölümünden kalan 0 değil ama sayı $kat tan buyukse
$sayi = substr($toplam,0,-1); // Toplam sayının son karakterini silip değişkene atıyoruz.
for($i=1;$i<=$sayi;$i++) { // $i değişkenine 1 verip $sayi degeri kadar döndürüyor ve resim input koyuyoruz.
echo '<input type="file"><br>';
}
} else { // Eğer sayı $kat tan küçükse.
echo 'Ne yazık ki resim yükleme hakkınız yok.';
}
?>

İşini görecektir. yorumcu id numarasını artık sen kendine göre çeker ve SQL sorgusunu düzenlersin.

Bu kod ile neler yapabileceğimizi satır satır sıraladım. Genel olarak bu kodun amacı şu:

Diyelim ki adamın 50 tane mesajı var. Bu sayıyı $kat değişkeninde atadığımız sayıya bölüyor. Eğer kalan kısımı 0 olursa toplam mesaj sayısının son hanesini silip o sayı kadar (50 nin son karakteri silinince 5) input döndürüyor. Farzedelim ki adamın mesaj sayısı 53. Bu sefer ikinci koşulda sayının 10 a bölümünden kalan değerinin hem 0 olup olmadıgını hemde $kat degerinden buyuk olup olmadıgını kontrol ediyor. Yine aynı kesme işlemi yapılarak 5 tane input döndürüyor. Sonda ise eğer mesaj sayısı $kat degerinden kucukse ekrana uyarı verdiriyor.

Kolay gelsin.

Not : Denemesini yapmak için ilk 3 satırı ($kat a kadar) silip onun yerine $toplam = 24; gibi bir sayı yada kafana göre bir sayı vererek calısıp calısmadıgını kontrol edebilirsin.
 

Lansewebtr

0
İyinet Üyesi
Katılım
30 Aralık 2010
Mesajlar
256
Reaction score
3
bi sütun da yükleme hakkı için aç ve mesaj sayısı artarken eğer 10 un katıysa hakkı bir yükselt. her yüklemede bir azalt.
 

garrip

0
İyinet Üyesi
Katılım
28 Aralık 2010
Mesajlar
174
Reaction score
0
"Erturk" o kadar uğraşıp cevap verdiğin için teşekkürler.

Konuyu açtıktan sonra aklıma Ahmet Akan'ın söylediği yöntem geldi bu şekilde sorunsuz işliyor.

'uyeler' adlı tablomda 'hak' ve 'yorumlar' şeklinde alanlarım var.
uye yorum eklediğinde 'yorumlar' bir artıyor ve
'yorumlar' alanını 10 ile bölüyoruz kalan 0 ise 'hak' nir artırıyoruz. Değilse bişe yok :)
tabii ki bir yorum silindiğinde 'yorumlar' kısmını azaltmıyoruz aksi halde silinen yorum yerine bir yorum daha eklendiğinde ve 10un katıysa bir hak daha verir.

HEPİNİZE CEVAPLAR İÇİN TEKRAR TEŞEKKÜRLER
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Üst