Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] problem z id, id jako auto_increment
_krc_
post
Post #1





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 17.02.2006

Ostrzeżenie: (0%)
-----


Witam,

Problem jest nastepujacy..
Mam tabele firma i w niej nastepujace pola: id, name, description

id ustawiony jako auto_increment.
Zalozmy ze chce stworzyc nowa firme w taki sposob, zeby na nowym formularzu (po nacisnieciu "dodaj") automatycznie pojawiał mi się nowy id firmy (zgodny z id z tabeli), oczywiscie jako nowicjusz zrobilem MAX(id)+1.
Ale po przykladowym skasowaniu ostatniego rekordu i ponownym stworzeniu nowego, id wyswietlane na formie nie bedzie juz sie zgadzal z tym w tabeli. Co innego kiedy najpierw stworze nowy rekord, moge to id pobrac za pomoca mysql_insert_id(). Ale w przeciwnym wypadku nie mam skad pobrac ostatniego id z tabeli. Czy jest na to jakis sposob?

Zauwazylem ze w phpmyadmin jest cos takiego "Identyfikator dodanego rekordu: xx" po dodaniu nowego rekordu. Ja chcialbym dobrac sie do tego id PRZED dodaniem nowego rekordu.

Pomozecie? smile.gif
Go to the top of the page
+Quote Post
Cienki1980
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 590
Pomógł: 40
Dołączył: 11.01.2007
Skąd: Centrum

Ostrzeżenie: (0%)
-----


Nie można wyznaczyć id z pola auto_increment przed wstawieniem rekordu.

W jakim w ogóle celu taki coś jest Ci potrzebne


--------------------
404
Go to the top of the page
+Quote Post
_krc_
post
Post #3





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 17.02.2006

Ostrzeżenie: (0%)
-----


OK podam to na przykladzie:

id - pole auto_increment

id | nazwa firmy
------------------
1 | firma 1
2 | firma 2
3 | firma 3

chce stworzyc firme w taki sposob zeby po nacisnieciu "dodaj firme" automatycznie ustawial mi w formularzu id kolejnej firmy. I chce zeby ten id zgadzal sie z tabela. Uzywajac MAX(id) + 1 w tym przykladzie kolejny numer bedzie wynosil 4 czyli ok, ale co jesli wczesniej skasuje ostatni rekord (id=3) i przy probie dodania nowej firmy funkcja MAX(id) + 1 zwroci mi 3 ale w tabeli, id firmy bedzie wynosic 4 i chce zeby ten wynik pokazywal mi w formularzu.

Wybacz ale nie umie tego wyjasnic w prostszy sposob.
Wolabym uniknac tworzenia nowego pola z numerem frmy, ale jak nie ma innego wyjscia..
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




http://forum.php.pl/index.php?showtopic=33...mp;#entry191278

Ale to bez sensu, bo jak dwie osoby na raz beda to robic, to beda mialy te samo id podane jako nastepne


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
_krc_
post
Post #5





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 17.02.2006

Ostrzeżenie: (0%)
-----


Cytat(nospor @ 19.09.2007, 10:05:22 ) *
http://forum.php.pl/index.php?showtopic=33...mp;#entry191278

Ale to bez sensu, bo jak dwie osoby na raz beda to robic, to beda mialy te samo id podane jako nastepne


Dzieki wielkie, no rzeczywiscie racja, nie pomyslalem o tym.
Jeszcze raz dziekuje i pozdrawiam
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 14:39