v2.5.2
Giriş yap

Php açık kontrolü

Anonim
765 defa görüntülendi ve 1 kişi tarafından değerlendirildi

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())
?>
qplot
1447 gün önce

VERİ TABANI BAĞLANTISI


	$DB_HOST = "localhost";
	$DB_NAME = "veritabanı adı";
	$DB_USER = "root";
	$DB_PASS = "şifre";
	
	try{
		$db = new PDO("mysql:host={$DB_HOST};dbname={$DB_NAME}",$DB_USER,$DB_PASS);
		$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        $db->query("SET CHARACTER SET utf8mb4");
		$db->exec("SET CHARACTER SET utf8mb4");
        $db->exec("SET NAMES 'utf8mb4'");  
	}
	catch(PDOException $e){
		echo "Bağlantı Hatası: " . $e->getMessage();
	} 
 
date_default_timezone_set('Europe/Istanbul');

 
ini_set("display_errors", 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
set_time_limit(0);  

buda kullanman gereken sorgu

$word=strip_tags($_POST['deger']); // strip_tags ve turvlerını kullanabılrısın html temızleme ıcın

$sql = $db->prepare("SELECT * FROM sonuclar WHERE baslik or aciklama or etiket LIKE ? LIMIT 7");
$sql->execute(["%$word%"])


if ($sql->rowCount()) {
    echo '<br>';
    echo '<a id="sonuc">Şuan da "'.strip_tags($word).'" sözcüğüyle ilgili arama sonuçlarını görüyorsunuz.</a>';
    while ($row = $sql->FETCH(PDO::FETCH_ASSOC)){
    
}
}else{

echo "Kayıt yok";

}