v2.5.2
Giriş yap

PHP ile cümleleri engelleme

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

Dediğim konu 1
Dediğim konu 2

Merhabalar,
Örnekler ile gösterdiğim gibi sonlarda 'nasıl yapılır, nerede bulunur, yağacak mı'
gibi sonlara eklenen aramalarda php ile engellemek istiyorum.

Örnekler:

    -$searchParam = htmlspecialchars($_GET['q']); nasıl yapılır
    -$searchParam = htmlspecialchars($_GET['q']); yağacak mı

Verdiğim php kodlarına yeni küçük php kod yazarak engel olabilir miyiz ?
Veya ikinci veya üçüncü kelimelerden sonra php'nin çalışmasına nasıl engel olabiliriz ?

Lütfen, yardımlarınızı bekliyorum.

erdal42
1007 gün önce

Çalışıyor diyebilirim @rephp7
Bunu nasıl $searchParam = htmlspecialchars($_GET['q']); yapabiliriz.

Yani aslında nasıl nasil yapılır gibi cümleleri engelleyelim aramalarda yeter. Çıkmaz zaten.
Böyle bir imkan var mı ? Bu arada

//Aramak istediğimiz değer
$searchParam = htmlspecialchars($_GET['q']);

$searchTitle = [
    "action" => "query",
    "list" => "search",
    "srsearch" => $searchParam,
    "format" => "json",
    /* Bu değerler kullanılarak sayfalama yapılabilir */
//    "srlimit" => 10,
//    "sroffset" => 9
];

/* verileri çekecek olan metodumuz */
function getData($params){
    $endPoint = "https://en.wikipedia.org/w/api.php";
    $url = $endPoint . "?" . http_build_query( $params );

    $ch = curl_init( $url );
    curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
    $output = curl_exec( $ch );
    curl_close( $ch );

    return json_decode( $output, true );
}

echo '<ul>';
$result = getData($searchTitle);

$query = $result['query'];
$total = $query['searchinfo']['totalhits'];
$datas = $query['search'];
/* Sonuç var mı kontrolü */
if ($total){
    foreach ($datas as $data){
        /* görselleri çekmek için belirteceğimiz parametreler */
        $imagesParam = [
            "action" => "query",
            "prop" => "images",
            "titles" => $data['title'],
            "format" => "json",
        ];

        echo '<li>';
        $images = getData($imagesParam);
        $firstPage = reset($images['query']['pages']);
        /* Konuya ait görsel değeri döndümü kontrolü yapılıyor */
        if ($firstPage && count($firstPage['images']) > 0){
            $imageUrlParams = [
                "action" => "query",
                "format" => "json",
                "prop" => "imageinfo",
                // İlk görseli alıyoruz
                "titles" => $firstPage['images'][0]['title'],
                'iiprop' => 'url'
            ];
            /* Görselin detayını çekerek url değerini bulmak için istek atıyoruz */
            $imageUrlResponse = getData($imageUrlParams);
            $imageUrlResponseFirstPage = reset($imageUrlResponse['query']['pages']);
            /* Dönen değer var mı kontrolü */
            if ($imageUrlResponseFirstPage && count($imageUrlResponseFirstPage['imageinfo']) > 0)
                echo '<img width="32" src="'. $imageUrlResponseFirstPage['imageinfo'][0]['url'] .'">';
        }

        echo $data['title'];
        echo '</li>';
    }
}else{
    echo $searchParam . ' hakkında hiç içerik bulunamadı';
}
echo '</ul>';

Wiki api php'sine nasıl entegre ederiz. '$searchParam = htmlspecialchars($_GET['q']);' dan sonra nasıl yapılır felan algılanmasın.
Cevabın için çok teşekkür ederim :)