ahoj prosim potrebuji poradit jak se da vymazat prispevek z diskusniho fora.ukladam je do databaze ale kdyz neco smazu tak to databazi uplne rozhodi....napr.: smazi prispevek s id 5 ale kdyz tam pridam dalsi tak mu nabehne id 6 a ne id 5 takze mi to rozhodi cely forum protoze pouzivam mysql_num_rows() takze mi vzdycky jeden prispevek chybi nebo se prochazeni databazi vzdy u prazdneho pole zasekne a dal to nejede
predem diky za odpovedi
jeste sem zapomnel dodat ze mazani neprovadim pres funkci ale pres databazovy manazer tady na webzdarma...nevim jestli to treba nemuze byt tim ale asi ne
Jak, chybí? Databáze není taková, aby u automaticky zvyšujícího klíče (id) najednou udělala něco jiného. Databáze není tak chytrá, aby si zjistila, zda nějaký nechybí, nebo aby při výmazu posunula všechna následná id. To ani nesmí dělat ;) U prázdného pole se zaseknout nemůže, protože tam není, teda pokud nemažeš tím způsobem, jako to dělají blondýny - otevřou Word, v něm dokument, který chtějí smazat, všechno pracně označí kurzorem myši, dají Úpravy -> Vyjmout a soubor uloží = pokud nevyprazdňuješ tak, že neděláš DELETE, ale přepíšeš hodnoty na prázdno.
tak diky to mi nak nedoslo ;)
ale jak mam teda mazat ty prispevky abych si pak nemusel hodinu hrat s databazi a spravovat to?
prece to nak musi jit ne?
zitmen: asi nerozumím tak úplně otázce, jestli máš v databázi dejme tomu 3 záznamy, id 1, 2, a 3, a smažeš id 2, tak budeš mít prostě dva záznamy, mysql_num_rows vrátí taky 2 a po záznamu s id 2 se shánět nebude - nebo jo? máš teda někde ve skriptu funkci, která předpokládá, že žádné id není vynechané? Nebo jakým způsobem se to rozhodí, kde je ten problém, že ti vadí, když některé id chybí?
Protože imho nedonutíš databázi, aby přečíslovala položky, příp. aby znovu použila poslední id jen proto, že jsi poslední příspěvek smazal. Takže spíš by to chtělo vyřešit problém s funkcí, které ta situace vadí.
Mám z toho takový nejasný pocit, že tahle tabulka není sama a nějakým záhandým způsobem se na ni odkazuje jiná. Ne? Jestli se v jiné tabulce odkazuješ např. na 6 řádek jiné tabulky, tak to honem předělej. Tyhle vazby se dělají přímo přes index ne číslo řádku. Jestli je můj pocit špatný, tak sorry, ale z otázky nevyplývá, proč se tabulka rozhodí....