PHP querystring değerleri denetleme

3 Cevap php
http://localhost/?area=characters&name=Michal+Stroganof



$result = mysql_query("SELECT * from players WHERE name = '$_GET[name]'");

while ($row = mysql_fetch_assoc($result)) {

    echo "Name: " .$row['name']. "<br>";
    echo "Level: " .$row['level']. "<br>";

}

Bu benim characters.php tüm kodu

Olsun değişken "adı" URL dahil değilse ben tablo oyuncuları arar arama formu göstermek istiyorum. Bunu nasıl yaparım?

3 Cevap

Sadece bu yüzden gibi SQL dizesini değiştirmek demek?

$sql = 'SELECT * from players';
if (isset($_GET['name'])) {
    $safename = mysql_real_escape_string($_GET['name']);
    $sql .= " WHERE name='$safename'";
}
$result = mysql_query($sql);

Lütfen SQL sterilize emin olun!

Hızlı ve kirli:

<?php
if (!isset($_GET['name']))
{
    echo  '<form action="'. $_SERVER['PHP_SELF'] .'" method="GET">'
         .'<input type="text" name="name" />'
         .'</form>';
}
else
{
    // your current code that queries your database here
}
?>