![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 18.08.2005 Skąd: Pabianice Ostrzeżenie: (0%) ![]() ![]() |
Mam prolem z wykonaniem inicjacji numeracji.
Idea jest taka: mam tabelę z dwiema kolumnami: id(klucz, autonumer) i numer. Jeśli tabela jest pusta (nie ma jeszcze wpisów) to niech zmienna numer przyjmuje wartość 1, a jak jest już jakiś wpis w kolumnie numer to niech zwraca jego wartość największą a zmienna numer niech przyjmuje wartość o jeden większą niż zwrócona. Wykonuje to tak ale coś jest źle bo kolejne numery to: 1, 2, 1, 1 ....
Proszę o małą pomoc |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 93 Pomógł: 5 Dołączył: 30.04.2006 Skąd: Gliwice Ostrzeżenie: (0%) ![]() ![]() |
Zamiast
SELECT id, numer FROM faktury HAVING id = max(id); może spróbuj 1) SELECT MAX(id) FROM faktury; albo 2) SELECT id, FROM faktury ORDER BY id DESC LIMIT 1; Oba przykłady zwracają największy id z bazy, tylko że pierwszy prostszy:P Na początku skryptu dodaj $numer = 0; bo nigdzie tego nie widać, wtedy jesteś pewny że wartość tej liczby na pewno będzie 0, a nie +/- X. Jeśli dalej będzie sie pojawiał błąd że dodaje 1,2,1 .... to zamień if (!empty($num)) na if (@$num) może to pomoże ![]() |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 00:02 |