Autor | Zpráva | ||
---|---|---|---|
majster_sveta Profil |
#1 · Zasláno: 22. 6. 2006, 17:43:15
takže - mám tento zdrojový kód
vypíše sa jedna položka, a potom to napíše Warning: mysql_fetch_array(): 76 is not a valid MySQL result resource in C:\www\index.php on line 124 - ten riadok je ten úplne prvý v tomto kóde čo som sem dal ak odstránim tučné riadky, všetko prebehne ako prebehnúť má, všetky položky sa z databáze vypíšu - mám nejaký matný dojem že robím chybu v tom že dávam databázový príkaz dovnútra while - preto som to dal do php |
||
WertriK Profil |
#2 · Zasláno: 22. 6. 2006, 18:19:46
Mno další select tam být může, dokonce tam může být i další while.
Chyba bude v tom, že v tom cyklu nějak zblbneš $vysledok, pokud říkáš že po odstraněni toho dalšího selectu vše funguje. Tak bych zkusil nahradit mysql_unbuffered_query obyčejným mysql_query což musí jít. |
||
majster_sveta Profil |
#3 · Zasláno: 22. 6. 2006, 18:27:31
ďakujem, po nahradení za obyčajné mysql_query ide všetko v poriadku - ešte raz ďakujem :-)
|
||
Kajman_ Profil * |
#4 · Zasláno: 22. 6. 2006, 18:57:32
Ale rozumnější je implementovat ten "nazev" přímo do předešlého dotazu.
|
||
majster_sveta Profil |
#5 · Zasláno: 22. 6. 2006, 19:18:17
práveže ten predchádzajúci príkaz vyberá príspevky z databáze, kde je pri každom príspevku ID kategórie - a z toho id musím dostať názov je to toto
$vysledok=mysql_query("select * from prispevky order by datum desc"); a nechcel som robiť identifikáciu príspevkov priamo podľa názvu kategórie, lebo by sa muselo prenášať viac dát medzi databázou a php - a to by niekedy v ďalekej budúcnosti mohlo spomaliť aplikáciu (aj keď si tým nie som istý :-) ) |
||
djlj Profil |
#6 · Zasláno: 22. 6. 2006, 19:25:29
majster_sveta
A jaký je problém udělat něco jako SELECT prispevky.*,kategorie.nazov FROM prispevky INNER JOIN kategorie ON kategorie.id=prispevky.kategoria GROUP BY prispevky.id ORDER BY datum DESC |
||
majster_sveta Profil |
#7 · Zasláno: 22. 6. 2006, 19:33:05
však ale to sú už tak zložité príkazy, ktoré sa snáď naučím neskôr :-)
|
||
tiso Profil |
#8 · Zasláno: 22. 6. 2006, 22:36:17
a nechcel som robiť identifikáciu príspevkov priamo podľa názvu kategórie, lebo by sa muselo prenášať viac dát medzi databázou a php
...hlavne že teraz je všetko v poriadku keď robíš 1+x dotazov na databázu (x je počet cyklov while) ...a to nerátam to stále escapovanie z/do PHP Mal by si sa v budúcnosti zamerať na tieto veci a nie na to čo si písal, vôbec si neuvedomuješ kde strácaš čas... |
||
majster_sveta Profil |
#9 · Zasláno: 22. 6. 2006, 22:43:31
však ja prijmem každú radu - to prelínanie html a php je chybné v čom? a je horšie mať viac prikazov na databázu ako prenášať viac dát?
ja sa totiž zďaleka nepovažujem za nejakého skúseného php/mysql programátora, som obyčajný začiatočník a veľmi rád sa nechám poučiť od skúsenejších. |
||
tiso Profil |
#10 · Zasláno: 22. 6. 2006, 23:15:07
1. opustenie PHP - to má význam iba pre väčšie celky HTML kódu, vtedy sa vypíše HTML bez toho aby doň muselo PHP zasahovať... Pokiaľ na jednom riadku prejdeš z php do html a späť spolu 6x, tak je niekde chyba... Jedno echo a máš to skôr, dokonca prehladnejšie...
2. zložitejším dotazom vyriešiš posielanie rovnakého množstva dát ale na jeden dotaz (ak som to správne pochopil)... Dotazy do DB totiž tiež zaberajú nejaký čas, preto je snaha minimalizovať ich počet... |
||
majster_sveta Profil |
#11 · Zasláno: 23. 6. 2006, 08:06:48
dobre ďakujem, zariadim sa podľa toho
|
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0