Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php][mysql] Pobieranie ID rekordu w momencie jego utworzenia
maziak
post
Post #1





Grupa: Zarejestrowani
Postów: 155
Pomógł: 17
Dołączył: 9.07.2007

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


Witam.
Jak pobrać ID (jest na auto increment) utworzonego wlasnie rekordu w tabeli, tak aby byly to dane pewne?
Przykladowo mam tabele o strukturze :
ID | cos1 | cos2
Robie INSERT INTO, i teraz chcialbym odnosnik (ID) dodac do innej tabeli.
Próbowalem tego szukac ale nic nie mogłem znaleść :S
Z góry dziękuje.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
scrat
post
Post #2





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 22.07.2007

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


mysql_insert_id

Ten post edytował scrat 30.07.2007, 18:54:37
Go to the top of the page
+Quote Post
maziak
post
Post #3





Grupa: Zarejestrowani
Postów: 155
Pomógł: 17
Dołączył: 9.07.2007

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


Dzięki scrat, naprowadziles mnie na wlasciwy trop tongue.gif
Jednak ja swoja strone pisze juz od paru dni w mysqli (php5).
Manual - dobra rzecz. Dla mysql_insert_id() pisze, że można podać identyfikator połączenia. Jednak dla mysqli :
http://pl.php.net/manual/pl/function.mysqli-insert-id.php
Nie ma nic o tym identyfikatorze. Napisane jest tylko, że zwroci ID ostatniego zapytania. A ja niechciał bym postawić skryptu w sytuacji, gdy wielu uzytkownikow wykonywac bedzie skrypt na raz i zostana pomieszane dane.


Lamentuje bezsensownie? tongue.gif Taka sytacja sie nie zdarza? Czy może mysqli juz automatycznie posiada w sobie ten caly identyfikator? Czy mozna go jakos uzyskac i przekazac do tej funkcji? Sorry, jeżeli zadaje głupie pytania, ale no coż - każdy kiedyś zaczynał haha.gif
Go to the top of the page
+Quote Post
kosmowariat
post
Post #4





Grupa: Zarejestrowani
Postów: 235
Pomógł: 17
Dołączył: 18.07.2007
Skąd: Białystok

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


no raczej lamentujesz bezsensownie biggrin.gif z tym nie powinno byc problemu ;p btw.
dla proceduralnego mysqli trzeba podać identyfikator : int mysqli_insert_id ( mysqli $link ) gdzie link to identyfikator połączenia. dla wersji obiektowej nie trzeba. właśnie tym różni się proceduralny mysqli od obiektowego.

Ten post edytował kosmowariat 30.07.2007, 19:43:21
Go to the top of the page
+Quote Post
maziak
post
Post #5





Grupa: Zarejestrowani
Postów: 155
Pomógł: 17
Dołączył: 9.07.2007

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


Jak to nie trzeba? Przecież dla proceduralnego wywołuje przykladowo
  1. <?php
  2. mysqli_insert_id($baza);
  3. ?>

A obiektowo
  1. <?php
  2. $baza->insert_id;
  3. ?>


To przeciez to samo? Czy sie znowu myle? tongue.gif
Go to the top of the page
+Quote Post
kosmowariat
post
Post #6





Grupa: Zarejestrowani
Postów: 235
Pomógł: 17
Dołączył: 18.07.2007
Skąd: Białystok

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


grrrr w wersji proceduralnej podajesz id połączenia jako parametr, w drugiej wywołujesz metodę obiektu. bez przekazywania id połączenia jako parametr funkcji/metody (id zapewne jest polem tego obiektu). w sumie dobrze rozumujesz, co ja będę mieszał cool.gif
Go to the top of the page
+Quote Post
maziak
post
Post #7





Grupa: Zarejestrowani
Postów: 155
Pomógł: 17
Dołączył: 9.07.2007

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


Ok, chwile mi zajęło ogarnięcie tego co wyzej napisales, ale chyba rozumiem laugh.gif Wazne zeby działało.
Dzięki smile.gif
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 - 17:04