SmokU
22.01.2005, 23:00:11
Witam, mam następujący problem, mam tabelke gdzie id ma auto_increment, po dodaniu nowego rekordu oczywiście jest przypisywany ID do rekordu i zaraz po mysql_query("INSERT...");
chciałbym odczytać przypisane ID, da się takie cacko zrobić?
crash
22.01.2005, 23:05:16
Da się, był dziś taki sam temat... Poszukaj.
SmokU
22.01.2005, 23:14:26
Właśnie czytałem o mysql_insert_id , ale nie do końca o to chodzi, wytłumacze jak to wygląda...
Mam sobie formularz, z formularza dane są dzielone i wrzucane do dwóch tabel w bazie:
Do pierwszej tabeli "x" wrzucam rekordy przy wykonywaniu pętli, w tej tabeli jedna kolumna przybiera wartość ID dodanego przez auto_increment w tabeli "y".
Do drugiej tabeli "y" wrzucam jeden rekord i przypisuje mu ID przez auto_increment.
Niestety musze wykonywać w takiej kolejności polecenia mysql, ponieważ skrypt jest bardziej rozbudowany, ma sprawdzanie błędów różnych itp.
Obecnie robie to na zasadzie
SELECT if FROM y ORDER BY id DESC
do wyniku dodaje + 1 i wrzucam wartośc do kolumny w tabeli x, ale nie jest to dobre rozwiązanie, ponieważ są błędy kiedy usune ostatni rekord z tabeli x, bądź też tabela x jest pusta...
Może podsuniecie mi jakiś pomysł...
invx
23.01.2005, 12:16:20
tez miale mpodobny problem, wreszcie go rozwiazalem tak
<?php
$zapytanie=\"INSERT INTO forum_c SET id_='0', id_b='$_SESSION[forum_id_b]', status='2', autor='$autor', temat='$_SESSION[forum_temat]'\";
$zapytanie2=\"SELECT MAX(id) AS id FROM forum_c ORDER BY id LIMIT 1\";
{
$wynik2[id];
$zapytanie3=\"UPDATE forum_c SET id_='$wynik2[id]' WHERE id='$wynik2[id]'\";
}
echo\"$zapytanie3\";
?>
niestety az 3 zapytania musze wykonac ... mzoe to Ci wczyms pomoze