• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Wyświetlanie wartości z bazy danych zależnie od $_GET['id']

Object Storage Arubacloud
0 głosów
636 wizyt
pytanie zadane 18 listopada 2017 w PHP przez Jake Obywatel (1,820 p.)

Witam, na starcie może wytłumaczę jaki bym chciał osiągnąć efekt - otóż mam już taki system, że jeśli nie ma żadnego parametru $_GET['id'] wyświetlam stronę główną gdzie mam wszystkie wpisy, natomiast chciałbym zrobić aby jeśli jest $_GET['id'] sprawdzało czy istnieje w bazie rekord z takowym id i jeśli tak to go wyświetlało a jeśli nie wyświetlało stronę z błędem, że nie znaleziono wpisu.

Dotychczas robiłem to poprzez sprawdzanie ilości linijek 

if($_GET['id']<=$num_rows){
      (.....)
} else {
      echo 'Nie znaleziono wpisów!';
}

lecz ostatnio dodałem opcję usuwania postów i to troszkę skomplikowało sprawę.

Z góry dziękuję za pomoc!

2 odpowiedzi

0 głosów
odpowiedź 20 listopada 2017 przez Jake Obywatel (1,820 p.)
 
Najlepsza

Dobra, poradziłem sobie, zrobiłem zwyczajnie 

$result = $pdo->query("SELECT `id` FROM jake_posts WHERE id = ".$_GET['id']);
if($line = $result->fetch()){
      //cos wyswietla
}

ps spokojnie pierw sprawdziłem czy $_GET['id'] istnieje oraz jest liczbą.

1
komentarz 20 listopada 2017 przez CzikaCarry Szeryf (75,340 p.)
Jak korzystasz z PDO to korzystaj też z bindowanie parametrów
+1 głos
odpowiedź 18 listopada 2017 przez sc4rface Dyskutant (7,710 p.)

Wykorzystaj funkcję count w SQL, zwróć sobie ilość rekordów o danym ID. Na przykład:

function getValue($id) {

$sql = "SELECT count(*) FROM `tabela` WHERE `id` = $id; // zalecam bindParam w PDO 

// zwróć sobie tutaj tablicę z wynikiem

}

 I później już prosta droga - na podstawie zwróconej wartości, tworzysz warunek i wyświetlasz to, czego oczekujesz ;)

if(getValue($_GET['id'] > 0) {

// zrób, jeżeli $_GET istnieje

}  else {

// zrób, jeżeli nie istnieje

}

Taki przykład - jeżeli dobrze zrozumiałem to, co chcesz osiągnąć.

komentarz 19 listopada 2017 przez Jake Obywatel (1,820 p.)
Nie o to chodziło - jeśli mam np 4 rekordy - id 1, 2, 3, 4 i np usunę rekord o id 1 to chciałbym aby nie dało się wejść na adres/?id=1 bo pokazuje pustą stronę

Podobne pytania

0 głosów
2 odpowiedzi 585 wizyt
pytanie zadane 4 listopada 2017 w PHP przez SzukającyPrzygód Bywalec (2,310 p.)
0 głosów
1 odpowiedź 1,949 wizyt
pytanie zadane 30 października 2017 w PHP przez cyberDEV Użytkownik (780 p.)
0 głosów
2 odpowiedzi 5,793 wizyt
pytanie zadane 21 maja 2016 w PHP przez Chisorq Obywatel (1,680 p.)

92,563 zapytań

141,414 odpowiedzi

319,592 komentarzy

61,948 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...