PDA

Orijinalini görmek için tıklayınız : PHP While ile Oyuncu Sıralaması


ErayT™
12-08-2013, 02:54 PM
echo '<table align="center" width="100%" border="0" style="border: 1px black solid;;">
<tr><td style="border: 1px black solid;"><b>Sıra</b></td>
<td style="border: 1px black solid;"><b>Nick</b></td>
<td style="border: 1px black solid;"><b>Level</b></td></tr>';
$oyuncu_sql = mysql_query("select * from `users` order by `exp` DESC limit 15");
$sira = 1;
while($oyuncu = mysql_fetch_assoc($oyuncu_sql))
{

echo '<tr><td style="border: 1px black solid;">'.$sira.'</td><td style="border: 1px black solid;">'.$oyuncu['login'].'</td><td style="border: 1px black solid;" align="center">'.$oyuncu['level'].'</td></tr>';
$sira++;
}
echo '</table>';



Yukarıdaki kodlar ile while döngüsü ve oyuncu sıralaması gibi şeyler yapabilirsiniz.

order by exp kısmı neye göre sıralanacağıdır. level yazarsanız leveli en yüksek olana göre sıralar

Exelans61tr
12-08-2013, 02:57 PM
Çok sağol eray :D

ErayT™
12-08-2013, 02:58 PM
Çok sağol eray :D

ne demek işine yaradıysa :) rep ver :D :P

Exelans61tr
01-05-2014, 11:10 AM
[Linkleri Sadece Kayıtlı Üyeler Görebilir!] ([Linkleri Sadece Kayıtlı Üyeler Görebilir!])

Kullandığım kod:<?php
error_reporting (0);

echo '<table align="center" width="100%" border="0" style="border: 1px black solid;;">
<tr><td style="border: 1px black solid;"><b><p>Sıra</b></td>
<td style="border: 1px black solid;"><b><p>Nick</b></td>
<td style="border: 1px black solid;"><b><p>Cinsi</b></td>
<td style="border: 1px black solid;"><b><p>Level</b></td>
<td style="border: 1px black solid;"><b><p>EXP</b></td></tr>';
$oyuncu_sql = mysql_query("select * from `karakter` order by `exp` DESC limit 1000");
$sira = 1;
while($oyuncu = mysql_fetch_assoc($oyuncu_sql))
{

echo '<tr><td style="border: 1px black solid;"><p>'.$sira.'</td><td style="border: 1px black solid;"><p>'.$oyuncu['kadi'].'</td><td style="border: 1px black solid;" align="center"><p>'.$oyuncu['karaktercins'].'</td><td style="border: 1px black solid;" align="center"><p>'.$oyuncu['seviye'].'</td><td style="border: 1px black solid;" align="center"><p>'.$oyuncu['exp'].'</td></tr>';
$sira++;
}
echo '</table>';



?>


Fakat yanlış sıralıyor sebebi nedir ?

emrealp
01-05-2014, 11:45 AM
'.$oyuncu['karaktercins'].'

şu kısmı if else mantığıyla yaparsanız olur istediğiniz

Exelans61tr
01-05-2014, 11:49 AM
yalnız 'exp' e göre sıralama yapıyor bunun sebebi nedir ?

emrealp
01-05-2014, 12:00 PM
$oyuncu_sql = mysql_query("select * from `karakter` order by `exp` DESC limit 1000");

neye göre sıralama yapmasını istiyorsanız exp yerine yazmanız yeterlidir.

Exelans61tr
01-05-2014, 12:02 PM
EXP için sıralama yapmak istiyorum fakat büyükten küçüğe yapması gerekiyorken 5 exp olan üstte 15 exp olan altta gözüküyor

emrealp
01-05-2014, 12:04 PM
$oyuncu_sql = mysql_query("select * from `karakter` order by `exp` ASC limit 1000");

böyle deneyiniz birde

Exelans61tr
01-05-2014, 12:08 PM
[Linkleri Sadece Kayıtlı Üyeler Görebilir!] ([Linkleri Sadece Kayıtlı Üyeler Görebilir!])

böyle oluyor şimdide

ErayT™
01-05-2014, 03:30 PM
$oyuncu_sql = mysql_query("select * from `karakter` order by `exp` DESC limit 1000");

böyle olması gerek. eğer karakter tablosunda exp kısmı varchar ise olmaz. int yapmanız gerekmektedir.

Exelans61tr
01-05-2014, 04:36 PM
Teşekkürler düzeldi