İyinet'e Hoşgeldiniz!

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

Kayıt Ol!

mysql da 3. sutunu almak

B

Baria

Misafir
Aşagıda birşeyler yapmaya calıstım timesplayed 3. sıradakileri almak istedim ve o satırda bulunan gameicon u resim e atamak istedim. dogru mu yaptım?hayır

bunun dogrusu nasıl alırım

$tablo = "SELECT * from games WHERE gamestatus = 1 ORDER BY timesplayed DESC LIMIT 3 1";
$sorgu= mysql_query ($tablo);
$resim= $tablo[gameicon];
 

zbahadir

0
İyinet Üyesi
Katılım
19 Mart 2006
Mesajlar
2,416
Reaction score
0
Konum
Trabzon
Satırı istersen şu şekilde yap;

PHP:
$tablo = "SELECT * from games WHERE gamestatus=1 ORDER BY timesplayed DESC LIMIT 3,1";
$sorgu= mysql_query ($tablo);
$resim= $tablo[gameicon];

Kısmen doğru, bir de burada benzer bir konu işlenmiştir işinize yarıyacağını tahmin ediyorum.
 
B

Baria

Misafir
<?
$veri_yolu = mysql_connect("localhost", "oyun","");

if ( ! $veri_yolu ) die ("MySQL ile veri bağlantısı kurulamıyor!");
$tablo = "SELECT * from games WHERE gamestatus = 1 ORDER BY timesplayed DESC LIMIT 3, 1";
$sorgu= mysql_query ($tablo);
$resim= $tablo[gametitle];
echo"$resim";

?>

kod bu ama "S" harfini veriyor sayfada :S anlamadım gitti. Burda timesplayed en çok oy alan listeliyordum
bu şekilde

SELECT * from games WHERE gamestatus = 1 ORDER BY timesplayed DESC LIMIT 6

şimdi yapmaya calıstıgım en çok listelenenler değilde 3. sıradakini almak istiyorum

 

zbahadir

0
İyinet Üyesi
Katılım
19 Mart 2006
Mesajlar
2,416
Reaction score
0
Konum
Trabzon
Üçüncü satırdaki bilgileri almak için şu şekilde yapabiliyormuşsun;

atasever'in önerisiydi;
select * from games limit 3,1

Edit;
veya tabloyu gönder ona göre bakalım. Bu saatlerde konuyu alıgılamam zayıflıyor da. :)
 
B

Baria

Misafir
ama timesplayed en çok oy alanı sıralayacaz sonra en çok oy alanların 1 ve 2 degil 3. yü alacaz.
 

zbahadir

0
İyinet Üyesi
Katılım
19 Mart 2006
Mesajlar
2,416
Reaction score
0
Konum
Trabzon
Baria' Alıntı:
ama timesplayed en çok oy alanı sıralayacaz sonra en çok oy alanların 1 ve 2 degil 3. yü alacaz.
Tabloyu ve verileri gönder yapayım yapayım sizin için ;)

Edit:
Bu arada gözümden kaçmış DESC tersten sıralamışsın onun yerine ASC kullan bakalım olacak mı?
 
B

Baria

Misafir
veri :)
<?
$veri_yolu = mysql_connect("localhost", "oyun","");

if ( ! $veri_yolu ) die ("MySQL ile veri bağlantısı kurulamıyor!");
$tablo = "SELECT * from games WHERE gamestatus = 1 ORDER BY timesplayed ASC LIMIT 3, 1";
$sorgu= mysql_query ($tablo);
$resim= $tablo[gametitle];
echo"$resim";

?>
buyur sql daki tablo
 

metadige

0
İyinet Üyesi
Katılım
23 Aralık 2005
Mesajlar
354
Reaction score
4
$sorgu= mysql_query ($tablo);
$resim= $tablo[gametitle];

olmaz ki $resim değişkenine sorguyu atıyorsun halbuki sorgunun sonucunu mysql_fetch_array, mysql_result vb. ile almıyorsun:

PHP:
<?php 
.....
......

$sonuc=mysql_fetch_array($sorgu);
$resim=$sonuc['gametitle'];
echo $resim;

?>

Ayrıca asc demeye gerek yoktur zaten varsayılan ASC yani küçükten büyüğedir. DESC ise sıralamayı tersten yaparak büyükten küçüğe doğru sıralar
 

zbahadir

0
İyinet Üyesi
Katılım
19 Mart 2006
Mesajlar
2,416
Reaction score
0
Konum
Trabzon
Baria' Alıntı:

O zaman şöyle bir şey işini görebilir.

PHP:
$sql= mysql_query ("SELECT gameicon from games where gamestatus = 1 ORDER BY timesplayed DESC LIMIT 3, 1");
list($resim)=mysql_fetch_row($sql);
echo $resim;
 

zbahadir

0
İyinet Üyesi
Katılım
19 Mart 2006
Mesajlar
2,416
Reaction score
0
Konum
Trabzon
Madem en çok oy alanı seçmemiz gerekiyor neden 3. sıradaki diyoruz? Doğrudan o sırayı seçebiliriz.

Konudışı:
Kusura bakma bu saatlerde pek kafam çalışmaz da :)

Bu da alternatif seçenek hangisi uyarsa onu kullanırsın;

$sql= mysql_query ("SELECT gameicon from games where gamestatus = 1 ORDER BY timesplayed ASC LIMIT 1, 1");
$resim=mysql_fetch_row($sql);
echo $resim[0];
 
B

Baria

Misafir
ben mi yanlsı yapıyorum yoksa calısmıyor mu? hepinizinkini denedim hata verdi
$tablo = "SELECT * from games WHERE gamestatus = 1 ORDER BY timesplayed ASC LIMIT 3, 1";
$sonuc=mysql_fetch_array($tablo);
$resim=$sonuc['gametitle'];
echo $resim;


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

zbahadir

0
İyinet Üyesi
Katılım
19 Mart 2006
Mesajlar
2,416
Reaction score
0
Konum
Trabzon
mysql_fetch_array kullanıyorsunu neden?

timesplayed'in en yüksek değerine göre veri çeken şu örneği deneyin;

PHP:
$sql= mysql_query ("SELECT gameicon from games where gamestatus='1' ORDER BY timesplayed DESC limit 1");
list($resim)=mysql_fetch_row($sql);
echo "$resim<br>";
 
B

Baria

Misafir
Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in c:\appserv\www\oyun\test.php on line 6


senin local de calısıyor mu?
 

metadige

0
İyinet Üyesi
Katılım
23 Aralık 2005
Mesajlar
354
Reaction score
4
hata verir tabii, bu sefer de sqle sorguyu göndermeden sonucu almaya kalkmışsın.Önce sorgunu göndereceksin, sonra dönen sonucu alacaksın. Ayrıca sadece resim adresini almak istiyorsan, * ile boş yere hepsini çekme ihtiyacın olan yeri çek sadece
PHP:
<?php
$sorgu =mysql_query('select * from games where gamestatus = 1 order by timesplayed limit 3, 1');
$sonuc=mysql_fetch_array($sorgu); 
$resim=$sonuc['gametitle']; 
echo $resim;
?>
 
B

Baria

Misafir
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\appserv\www\oyun\test.php on line 6


delirecem. olmadı 6. satırda $sonuc=mysql_fetch_array($sorgu); var
 

zbahadir

0
İyinet Üyesi
Katılım
19 Mart 2006
Mesajlar
2,416
Reaction score
0
Konum
Trabzon
zbahadir' Alıntı:
mysql_fetch_array kullanıyorsunu neden?

timesplayed'in en yüksek değerine göre veri çeken şu örneği deneyin;

PHP:
$sql= mysql_query ("SELECT gameicon from games where gamestatus='1' ORDER BY timesplayed DESC limit 1");
list($resim)=mysql_fetch_row($sql);
echo "$resim<br>";

Sen en iyisi bu kodu kullan.
 

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.

Backlink ve Tanıtım Yazısı için iletişime geçmek için Skype Adresimiz: .cid.1580508955483fe5

Üst