Php açık kontrolü
Arkadaşlar phpde yeniyim açıklarıdır vs çok bilgim yok. Aşağıdaki kodda siteme kötü niyetli kişiler tarafından zarar verilmesine sebeb olacak bir açık gibi bir şey var mıdır? Bilgili arkadaşlar yardımcı olabilir mi?
<?php
$sql = $db->query("SELECT * FROM sonuclar WHERE baslik or aciklama or etiket LIKE '%".$word."%' LIMIT 7");
if ($sql->num_rows) {
echo '<br>';
echo '<a id="sonuc">Şuan da "'.$word.'" sözcüğüyle ilgili arama sonuçlarını görüyorsunuz.</a>';
while ($row = $sql->fetch_assoc())
?>
Sorun değil hocam.
İlk hata için
$_GET["word"]
içindeki wordü Parametre Aldığınız Değer Yani
deneme.com/deneme?word=deneme
olan değerdir.
Eğer Olmaz ise
İkinci Hata İçin
$sql = $db->prepare("SELECT * FROM sonuclar WHERE baslik or aciklama or etiket LIKE '% :word %' LIMIT 7");
böyle denermisiniz hocam büyük ihtimal birleşik olduğu için :word% diye saymış olabilir.
Üçüncü hata için
if ($sql->num_rows) {
a çevirirseniz olacaktır diye düşünüyorum.