ugrás a tartalomhoz

Egymás után adatlekérések mysqlből

lamase · 2005. Júl. 24. (V), 18.20
PafileDB-t (www.phparena.net/pafiledb.php) használok, és szeretném lekérni mysqlből az utoljára hozzáaadott fájlok listáját. Ezzel nem is lenne gond, csak van benne egy kis csavar..

pafiledb_cat tartalmazza a kategóriák listáját, itt van nekem egy X ($cat_id=1) és egy Y ($cat_id=2) főkategóriám. Ugyan ebbe a pafiledb_cat -be vannak az alkategóriák is, hat darab, de amire nekem szükségem van azok a következő alkategóriák: A ($cat_id=3), B ($cat_id=4), C ($cat_id=5). Az alkategóriákat úgy különbözteti meg a főkategóriától, hogy a cat_parent-nek értéket, ad, az-az melyik cat_id -jű főkategóriához tartozik. Jelen esetben az A, B és a C alkategóriának a cat_parentje 1.

Ezekbe az alkategóriákba kerülnek a fájlok, a fájlokat a pafiledb_files -ba írja bele. Azt, hogy egy-egy fájl melyik ALkategóriához tartozik azt file_catid sor tárolja.

Nekem arra lenne szükségem, hogy az X kategóriához tartozó összes alkategóriából kiválogassa az utoljára hozzáaadott 10 fájlt dátum szerint.

Remélem érhetően sikerült fogalmaznom. :) Itt egy próbálkozás, de sajnos nem jó, mert csak az 'A' alkategóriából válogatja ki a fájlokat.

<?php
$DBHost="xxx"; 
$DBUser="xxx"; 
$DBPass="xxx"; 
$DBName="xxx"; 
mysql_connect("$DBHost","$DBUser","$DBPass"); 
mysql_select_db("$DBName"); 

$result = mysql_query("SELECT * FROM pafiledb_cat WHERE cat_parent='2'");
$num = mysql_num_rows($result);
while ($record = mysql_fetch_object($result)) {
	$cat_id = "$record->cat_id";

	$query = "SELECT * FROM pafiledb_files WHERE file_catid='$cat_id,' ORDER BY file_time DESC limit 10";
	$result = mysql_query($query); 
        while ($record = mysql_fetch_object($result)) {
       	    $file_id = "$record->file_id";
            $file_name = "$record->file_name";
            $file_dls = "$record->file_dls"; 

 	    echo"<a href=\"downloads.php?file=1&file_id=$file_id\" title=\"Letöltések: $file_dls\">$file_name</a><br>"; 
       }
}
?>
 
1

JOIN ?

tiku I tikaszvince · 2005. Júl. 24. (V), 18.38
Mi lenne ha összekapcsolnád a két táblát, és úgy próbálnád a lekérdezést?

$query = "SELECT * FROM pafiledb_files LEFT JOIN pafiledb_cat ON pafiledb_cat.cat_id=pafiledb_files.cat_id WHERE cat_parent='$cat_parent' ";
vagy valami ehez nagyon hasonló...

TikuVoltam
Ma is holnap fekszünk le, mint tegnap
2

lehet közel a

lamase · 2005. Júl. 25. (H), 00.38
lehet közel a megoldás
Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in dl.php on line 12