Autor Zpráva
peta
Profil *
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 *
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
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
mysql_insert_id
peta
Profil *
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 *
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.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0