Autor | Zpráva | ||
---|---|---|---|
peta Profil * |
#1 · Zasláno: 3. 3. 2006, 19:08:31
V manualu jsem se docetl o SELECT LAST_INSERT_ID()
ale neni mi zcela jasne pouziti... Potrebuji zjistit posledni ID (resp ID, ktere se pouzije pro nasledujici INSERT) z tabulky `sez_photo` cili neco jako $dotaz = "SELECT LAST_INSERT_ID() FROM $tabulka"; $vysledek = mysql_query($dotaz) or die("DB Error: photo - find last ID! ".mysql_error()); $p_row1 = mysql_fetch_array($vysledek); $id1 = $p_row1[0]; a neumim s tim hnout. Proste jsem chtel usporit 1 narocnejsi dotaz tim, ze zjistim ID. Bez toho musim udelat INSERT, SELECT order by id -> id, presun fotky, a UPDATE A ja chci pojmenovat fotku prave podle ID, na kterem bude ulozena. Samozrejme to muzu udelat obracene, bez UPDATE. insert, pak zjisti ID a znovu ukladat cestu nemusim, protoze je s hodna s ID, ale ja jsem rad peclivy a chci tam mit plny nazev 'obrazek'.$id.'jpg' |
||
peta Profil * |
#2 · Zasláno: 3. 3. 2006, 20:10:20
uz to mam:
http://sunsite.mff.cuni.cz/MIRRORS/ftp.mysql.com/doc/en/SHOW_TABLE_STA TUS.html SHOW TABLE STATUS LIKE 'sez_photo'; pozor na uvozovky!! $tabulka="sez_photo"; "SHOW TABLE STATUS LIKE '$tabulka'"; |
||
Leo Profil |
#3 · Zasláno: 3. 3. 2006, 20:13:23
Mnohem rozumnejsi je ulozit zaznam k fotce do db, zjistit id (je na to v PHP primo mysql fce) a to PAK pouzit pro nazev souboru, Leo
|
||
Peca Profil |
#4 · Zasláno: 3. 3. 2006, 21:20:36
|
||
peta Profil * |
#5 · Zasláno: 4. 3. 2006, 12:01:46
Leo jo, ale to je dotaz o 1 vic. A kdyz ma tabulka primo v sobe hodnotu pro nasledujici INSERT, tak nevidim duvod ji nevyuzit.
Proc je to lepsi, v cem? Peca To bylo asi doplneni k Leovi. Ma to 1 vadu, je to dotaz naviz. Nejdriv INSERT, pak mysql_insert_id a pak UPDATE. Kdezto ted primo vytahnu id a provedu jen INSERT. |
||
Kajman_ Profil * |
#6 · Zasláno: 6. 3. 2006, 16:56:38
Může tam dojít k problémům při sočasném paralelním vkládání více zánamů.
Myslím, že v mysql je něco jako sloupeček.nextval - možná by se to dalo použít. |
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0