Autor | Zpráva | ||
---|---|---|---|
karel Profil * |
#1 · Zasláno: 9. 1. 2007, 13:12:02
mám tabulky:
TEMA(id, nazev) PRISPEVKY(id, obsah, tema, zanoreni) a dotaz: SELECT * FROM TEMA JOIN PRISPEVKY ON TEMA.ID = PRISPEVKY.TEMA; což vrací všechny záznamy v následující skladbě: id , nazev , id, obsah, tema, zanoreni ... problém je, že jsou tam 2 stejné sloupce, čemuž bych se mohl vyhnout tím, že bych je přejmenoval, ale mě by zajímalo, jestli je lze i tak vypsat ... myslel jsem, že to funguje s tečkovou notací (tema.id, nazev.id, prispevky.id, prispevky.obsah,....) ale když mám v PHP skript: while($zaznam = MySQL_Fetch_Array($dotaz)){ echo $zaznam['tema.id']." ".$zaznam['tema.nazev']." ".$zaznam['prispevky.id']... atd } tak mi to bohužel nefunguje ... kde je chyba? moc dík za radu, k. |
||
nightfish Profil |
#2 · Zasláno: 9. 1. 2007, 13:14:04
kde je chyba nevím, nicméně přepsal bych to jako
while ($zaznam = mysql_fetch_row($dotaz)) { list($idTema, $nazev, $idPrispevky, $obsah, $tema, $zanoreni) = $zaznam; // a tady výpis } |
||
nightfish Profil |
#3 · Zasláno: 9. 1. 2007, 13:17:58
jinak když si v tom svém while ($zaznam = mysql_fetch_array($dotaz)) dáš vypsat
print_r($zaznam); tak uvidíš, jaké indexy jsou v poli $zaznam definovány... |
||
karel Profil * |
#4 · Zasláno: 9. 1. 2007, 13:53:26
... co se člověk všechno nedozví :)
on si uchovává i číselné indexy i asociační (?) indexy: [0] => 1 [id] => 333 [1] => prvni tema [nazev] => prvni tema [2] => 333 [3] => 1 [tema] => 1 [4] => toto je obsah prvniho tematu [obsah] => toto je obsah prvniho tematu [5] => 0 [zanoreni] => 0 [6] => 0 [rodic] => 0 [7] => 1 [poradi] => 1 ... akorát u těch jmen atributů, která jsou stejná ("id") to zmotal a k prvnímu výskytu is u těch asociací přiřadil hodnotu, která má být u druhého výskytu a u druhého výskytu prvek pole s asociačním klíčem chybí úplně. Je to divné. |
||
nightfish Profil |
#5 · Zasláno: 9. 1. 2007, 14:00:24
mysql_fetch_row vrací pole s číselnými indexy
mysql_fetch_assoc vrací pole s indexy odpovídajícími názvu sloupce mysql_fetch_array vrací pole, které obsahuje oba typy indexů |
||
karel Profil * |
#6 · Zasláno: 9. 1. 2007, 14:06:52
díky za radu. ten fígl s funkcí list() je dost kosmickej, použil jsem ho :)
K. |
||
Časová prodleva: 17 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0