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

wyciąganie danych z tabeli

Object Storage Arubacloud
0 głosów
142 wizyt
pytanie zadane 11 grudnia 2016 w PHP przez Adkins1 Nowicjusz (150 p.)

Dzień dobry wszystkim. Mam problem z wyciągnięciem numerów ID pytań o danej kategorii. Kategoria przychodzi AJAXem z pliku html - zapisana jest jako string w zmiennej $kategoria.
Moim problemem póki co jest wykonanie kwerendy, tak aby dała mi jakikolwiek wynik. W przykładzie chcę wyświetlić ilość rekordów, które to spełniają wymaganie WHERE.
Przykład: Klikam w kategorię 'general' -> w bazie jest 8 rekordów o kategorii 'general' -> wyświetlam ich ilość.
Zamiast tego wyskakuje błąd - Unknown column 'general' in 'where clause'
Skrypt:

<?php
$kategoria = @strval($_GET['q']);

$con = mysqli_connect('localhost','root','','baza01');
if (!$con) {
    die('Could not connect: ' . mysqli_error($con));
}

mysqli_select_db($con,"ajax_demo");
$sql="SELECT id_pyt FROM tabela01 WHERE kategoria=" .$kategoria. "";

if($result = mysqli_query($con,$sql))

{
	$row_count = mysqli_num_rows($result);
	echo $row_count ;
    mysqli_free_result($result);
}	
else echo mysqli_error($con);

mysqli_close($con);

?>

Baza: 

1 odpowiedź

0 głosów
odpowiedź 11 grudnia 2016 przez Arkadiusz Waluk Ekspert (287,950 p.)
wybrane 11 grudnia 2016 przez Adkins1
 
Najlepsza
$sql="SELECT id_pyt FROM tabela01 WHERE kategoria=" .$kategoria. "";

Skoro pod $kategoria masz stringa to wstawiając go do zapytania wypadałoby potraktować go jak stringa, czyli np. wstawić w apostrofy.

ALE od razu zaznaczam, że jest to niezbyt dobry sposób, gdyż Twój kod nie jest w ogóle zabezpieczony przed sql injection. Polecam bindowanie, to właściwie pewne zabezpieczenie.

1
komentarz 11 grudnia 2016 przez Adkins1 Nowicjusz (150 p.)
Dzięki wielkie, to mi otwiera drogę do pisania dalej. Brak zabezpieczeń jest wynikiem poszukiwania błędu i upraszczania zapisu do minimum. Wypróbuję również bindowanie!

Podobne pytania

0 głosów
1 odpowiedź 645 wizyt
pytanie zadane 17 listopada 2016 w PHP przez Sławek Obywatel (1,270 p.)
0 głosów
0 odpowiedzi 2,221 wizyt
pytanie zadane 28 października 2017 w PHP przez Undisputed Gaduła (3,040 p.)
0 głosów
1 odpowiedź 441 wizyt
pytanie zadane 16 czerwca 2017 w PHP przez BlvckFox Gaduła (4,240 p.)

92,615 zapytań

141,465 odpowiedzi

319,779 komentarzy

61,997 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!

...