woj_nowak
23.01.2011, 17:22:40
Witam,
Mam tabelę mysql z takimi kolumnami:
id - imie - nazwisko
1 - jan - nowak
2 - tomasz - kowalski
3 - jacek - wolski
4 - jan - nowak
Jak (w PHP lub SQL) policzyć ilu jest ludzi o dokładnie tym samym zarówno imieniu i nazwisku?
A najlepiej jak powinno wyglądać zapytanie, żeby po dodaniu nowego usera sprawdzić ile jest osób o tym samym imieniu i nazwisku co ten ostatnio dodany. Czyli dodaję usera nr 5:
INSERT INTO tabela (id,imie,nazwisko) values (5,jan,nowak);
I teraz sprawdzenie ilu jest w tabeli janów nowaków. Jeśli 1, to wyświetl "dodano pierwszego jana nowaka", jeśli 2, to wyświetl "dodano drugiego jana nowaka" itd.
Dziękuję za pomoc!
Pozdrawiam!
Ulysess
23.01.2011, 17:45:48
$imie = 'Jan';
$nazwisko 'Kowalski';
woj_nowak
23.01.2011, 19:24:38
Dzięki, spróbowałem, i tak:
1. chyba brakuje w linii 2 znaku równości (poprawiłem)
2. dostaję komunikat "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''Kowalski' at line 1"
3. Przede wszystkim jednak nie chcę w 2 pierwszych linijkach mieć na sztywno wartości:
$imie = 'Jan';
$nazwisko 'Kowalski';
tylko bym chciał, żeby te wartości się brały z automatu z ostatniego ID jaki jest w tablicy w momencie wykonywania skryptu.
woj_nowak
24.01.2011, 00:59:18
Juz wiem skad ten blad - w linii 3 brakowało jednego znaku '
Powinno byc:
$zapytanie = mysql_query("SELECT `id` FROM `tabela` WHERE `imie`='".mysql_real_escape_string($imie)."' AND `nazwisko`='".mysql_real_escape_string($nazwisko)."'") or die(mysql_error());
wookieb
24.01.2011, 06:58:51
Używaj człowieku BBCODE.
Tak się nie liczy rekordów
SELECT count(id) AS ile FROM tabela WHERE imie = "imie" AND nazwisko = "nazwisko"