MYSQL şişince çalışan kod çalışmıyor.

S
.SErKAn.
Misafir
Evet db satırları - 2000 satır iken bu kodda hiç bir sorun yok fakat, satırlar 4000+ olunca bu hatayı alıyorum

mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource

PHP:
$tablo = mysql_query ("SELECT * FROM ".$db." ORDER BY rand() LIMIT 0,".$linkler.""); 
while ($oku = mysql_fetch_assoc ($tablo)) {
 $xcx = strtr($oku[dosya], "ıIİĞğÜŞİÖöÇ窺ü", "iiiggusiooccssu");
 $xcx = strtolower($xcx);

echo "<a href=\"$klasor/$xcx$oku[id].html\"><font color='#FFFFFF'>$oku[dosya]</a></font> ";

}

sadece rand ile veri çağırırken oluyor.
 
0
Onaylı Üye
Üye
Katılım
5 Haziran 2006
Mesajlar
1,894
Tepki puanı
7
PHP:
$tablo=mysql_query("select id,dosya from $db order by rand() limit 0,$linkler");
while ($oku=mysql_fetch_array($tablo)) {
 $xcx = strtr($oku[dosya], "ıIİĞğÜŞİÖöÇ窺ü", "iiiggusiooccssu");
 $xcx = strtolower($xcx);

echo "<a href=\"$klasor/$xcx$oku[id].html\"><font color='#FFFFFF'>$oku[dosya]</a></font> ";

}
 
0
Onaylı Üye
Üye
Katılım
12 Haziran 2006
Mesajlar
1,511
Tepki puanı
0
Konum
Kayseri
cevaplamış ama bende bişeyler eklemek istedim.

1- mysql yada herhangi bir sql den veri çağrırken mutlaka ihtiyacınız olan şeyi çağırın.

PHP:
select * from tablo // Yanlış çünkü tablonun tümü hafızaya giriyor
select id,yazi form tablo // doğru sayılabilir gerekli yerler istenmiş

2- Eğer yüklü mysql sorguları yapmak zorunda kalıyorsanız mysql_pconnect ile bağlantı kurun. Hostu tipinizie ve ayarlara göre değişmekle beraber her iki varyasyonu deneyin.

3- Mysql_free_result kullanın. Tablolardan gelen veri yığınlarını boşaltırsınız.

PHP:
$topla=mysql_query ("select  id,deli,hastaligi from bakirkoy");
// döngüler ekrana basmalar vs....
mysql_free_result($topla);

4- Arama işi yaptıdığınız sütunları index özelliği verin. Bu konu çok detaylı geniş bir konu. Google amca faidesini anlatır size...
 
Geri
Üst