Autor Zpráva
Graja125
Profil *
Dobry den,

robim postu pre uzivatelov, a ked mam zoznam prijatych sprav tak ked zobrazujem postu tak to mam, ze

sprava/?id=35

neda sa to spravit aby nepisalo id spravy? proste nechcem ukazovat kolko sprav je v databaze...

poradte
Joker
Profil
Za prvé si toho údaje většina uživatelů ani nevšimne a ten zbytek stejně nebude zajímat :-)
Krom toho, pokud jde zprávy i mazat, ID zprávy odpovídá počtu zpráv, které jsou nebo někdy byly v databázi uložené, ne kolik zpráv v databázi aktuálně je.

Pokud je z nějakého závažného důvodu skutečně utajit počet zpráv v databázi, pak je správné řešení nasnadě: k identifikaci zprávy se nesmí používat její pořadové číslo.
Graja125
Profil *
a teda ako to mam spravit?
Beduin
Profil *
Třeba to id hashuj - do tabulky si ulož sloupec s md5 hodnotou toho id. A protože bude každé id jiné, bude i každý hash jiný.
ahojakkk
Profil *
nebo, možná lépe, generuj náhodné číslo ;)
Alphard
Profil
A protože bude každé id jiné, bude i každý hash jiný
to není tak jisté, i když velmi pravděpodobné, záleží na počtu zpráv
nebo, možná lépe, generuj náhodné číslo
bude muset řešit unikátnost, ale není to nijak velký problém, jen se na to musí pamatovat
Beduin
Profil *
Alphard - třeba u md5 je téměř 100% šance (teď mluvím v odhadu přesnosti zhruba 10 na -32), že ke kolizi nedojde, když bude používat id zpráv (čísla co se vejdou do integeru). U sha1 nebo ještě silnějších je kolize ještě víc vyloučená.
Alphard
Profil
Beduin
jj :-) dneska mám sklony chytat lidi za slovo, promiň, ale uznej, že výrok A protože bude každé id jiné, bude i každý hash jiný bez dalších podmínek je zavádějicí
Graja125
Profil *
a da sa nejako priamo v INSERT napisat nech spravit md5() toho id co ma byt?

Lebo ved je to cez auto_increment...

diky za radu

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: