Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] zapytanie i pobranie id
Forum PHP.pl > Forum > Przedszkole
blizniak
mam przykladowo jakies zapytanie np
  1. <?php
  2. $zapytanie1=mysql_query("INSERT INTO advert_have  SET id_who_...............
  3. ?>


i teraz musze wykonac drugie zapytanie do ktorego potrzebny mi jest numer id(ten uniklany numer) z rekordu z zapytania1 ktore zostalo przed chwila wykonane

robie to tak
  1. <?php
  2. $sql = mysql_fetch_array(mysql_query("SHOW TABLE STATUS LIKE 'advert_have'"), MYSQL_ASSOC);
  3.           $tmp = $sql['Auto_increment'];
  4.          
  5.           $zapytanie4 = $tmp-1;
  6. ?>

czyli odczytuje jaki bedzie numer kolejnego id jakie bedzie w tablece no i odejmuje od tego jeden czyli otrzymuje numer najwiekszego id w tej tabelce

tylko problem jest w tym co sie stanie jak np w ciagu 1 minut 1000 uzytkownikow bedzie dodawac kolejne zapytania
wtedy moze zaistniec taka sytuacja ze po moim pierwszym zapytaniu zostanie wykonane zapytanie innego uzytkownika no i wtedy jest problem bo to drugie zapytanie doda mi rekord do bazy z nieprawidlowym id

jak sie przedtym zabezpieczyc jakies pomysly ?
chodzi o to zeby byc na 100% pewnym ze to id w 1 i 2 zapytaniu jest takie same
rozwiazaniem moglo by byc dodawanie jakiegos kodu rondomize do tego pierwszego zapytania, no i wtedy przy drugim zapytaniu wyszukujemu ten kod no i wtedy raczej nie zajdzie sytuacja opisana powyzej
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.