[ pecooou @ 05.04.2013. 19:17 ] @
| Imam sledeci kod:
$pid = mysql_insert_id();
$newname = "$pid.jpg";
move_uploaded_file($_FILES['fileField']['tmp_name'],"upload/$newname");
i snima mi sliku po nazivom: 0.jpg
Zelim da mi ispred imena slike doda id.
Moze li mi neko reci gde gresim? |
[ kelja @ 05.04.2013. 20:06 ] @
http://www.w3schools.com/php/func_mysql_insert_id.asp
The mysql_insert_id() function returns the AUTO_INCREMENT ID generated from the previous INSERT operation.
This function returns 0 if the previous operation does not generate an AUTO_INCREMENT ID, or FALSE on MySQL connection failure.
[ Mystery @ 05.04.2013. 21:37 ] @
Vidi mysql_error(), bice ti jasnije.
[ cyBerManIA @ 06.04.2013. 18:32 ] @
Hahaha upravo radim i ja neki script, pa sam gledao za neku funkciju u mySQLu koja ce mi dati ID trenutne transakcije, no nisam nasao.
Kao sto u MS SQLu postoji @@IDENTITY, tacnije SCOPE_IDENTITY.
Moze da se uradi sa MYSQLI_INSERT_ID() ili sa LAST_INSERT_ID(), tako sto bi prvo uradio INSERT sa svim podacima (da bi dobio ID), a odmah zatim update tim drugim podacima gde ti treba ID.
Dobra stvar je da se odnose samo na trenutnu konekciju, pa ne moze neko drugi da upadne i zauzme AI ID.
Druga varijanta je da se iscita schema i vidi koji je sledeci ID, no to mi ne deluje toliko sigurno osim ako se ne postavlja trigger i lockovanje tabele.
Trenutno mislim da je ova prva varijanta najbolja, no pogledacu ako uspem da nadjem nesto slicno ala MSSQL SCOPE_IDENTITY, da ne bi radio insert pa update.
[ pecooou @ 09.04.2013. 00:49 ] @
Ovako prorade
$newname = "$pid.1.jpg";
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.