/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
Sikkerhed i mysql_insert_id()
Fra : Martin


Dato : 27-06-06 22:06

Hej.

Lad os forstille os at vi er inde på en meget brugt side.
Så, hvor stor er muligheden for at at anden bruger for et ID som IKKE er
brugerens, men den anden brugers.

Koden ser således ud.

$db = new sql;
$db->query("INSERT ....");
$id = $db->last_insert();

Det er selvfølgelig næsten umuligt at få personer til oprette en bruger
eller lign. inde for så kort tid, men er det muligt?

 
 
Michael Zedeler (27-06-2006)
Kommentar
Fra : Michael Zedeler


Dato : 27-06-06 22:40

Martin wrote:
> Lad os forstille os at vi er inde på en meget brugt side.
> Så, hvor stor er muligheden for at at anden bruger for et ID som IKKE er
> brugerens, men den anden brugers.
>
> Koden ser således ud.
>
> $db = new sql;
> $db->query("INSERT ....");
> $id = $db->last_insert();
>
> Det er selvfølgelig næsten umuligt at få personer til oprette en bruger
> eller lign. inde for så kort tid, men er det muligt?

Du glemte at skrive hvilket sprog, du benytter ovenfor. Jeg går ud fra
at der er tale om perl med modulet DBI og at det er funktionen
last_insert_id(), du henviser til

last_insert_id() benytter databasesystemets interface til at få fat i
det id, som rækken blev oprettet med. Hvis du læser manualen for DBI,
står der hvordan den virker. Afhængigt af hvilken database, du benytter,
kan du være nødt til at pakke det hele ind i en transaktion.

Men læs manualen.

Mvh. Michael.
--
Which is more dangerous? TV guided missiles or TV guided families?
I am less likely to answer usenet postings by anonymous authors.
Visit my home page at http://michael.zedeler.dk/

Martin (28-06-2006)
Kommentar
Fra : Martin


Dato : 28-06-06 03:32

Michael Zedeler wrote:>
> Du glemte at skrive hvilket sprog, du benytter ovenfor. Jeg går ud fra
> at der er tale om perl med modulet DBI og at det er funktionen
> last_insert_id(), du henviser til

Hov, det er godt nok PHP og MySql 5, med MyISAM tabeller (og ikke
mulighed for andre typer tabeller)

Michael Zedeler (28-06-2006)
Kommentar
Fra : Michael Zedeler


Dato : 28-06-06 07:49

Martin wrote:
> Michael Zedeler wrote:>
>
>> Du glemte at skrive hvilket sprog, du benytter ovenfor. Jeg går ud fra
>> at der er tale om perl med modulet DBI og at det er funktionen
>> last_insert_id(), du henviser til
>
> Hov, det er godt nok PHP og MySql 5, med MyISAM tabeller (og ikke
> mulighed for andre typer tabeller)

Hmmm.... har du et link til PHP-dokumentationen af den last_insert() som
du bruger?

Mvh. Michael.
--
Which is more dangerous? TV guided missiles or TV guided families?
I am less likely to answer usenet postings by anonymous authors.
Visit my home page at http://michael.zedeler.dk/

Jesper Juul-Mortense~ (28-06-2006)
Kommentar
Fra : Jesper Juul-Mortense~


Dato : 28-06-06 06:50

On Tue, 27 Jun 2006 23:06:27 +0200, Martin <news@natten-i.dk> wrote:

>Lad os forstille os at vi er inde på en meget brugt side.
>Så, hvor stor er muligheden for at at anden bruger for et ID som IKKE er
>brugerens, men den anden brugers.

http://dev.mysql.com/doc/refman/5.0/en/mysql-insert-id.html

"The value of mysql_insert_id() is affected only by statements issued
within the current client connection. It is not affected by statements
issued by other clients."

/Jesper

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408914
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste