Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] sprawdzenie czy w tabeli istnieje już rekord taki sam jak ostatnio dodany
Forum PHP.pl > Forum > Przedszkole
woj_nowak
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
  1. $imie = 'Jan';
  2. $nazwisko 'Kowalski';
  3. $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());
  4. $dane = mysql_num_rows($zapytanie);
  5. echo 'Wynik: ',$dane;
woj_nowak
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
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
Używaj człowieku BBCODE.
Tak się nie liczy rekordów
  1. SELECT count(id) AS ile FROM tabela WHERE imie = "imie" AND nazwisko = "nazwisko"
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.