Eğer bir parametre olarak arama metnini kabul eden bir işlevi sorgu soyut olabilir. Gibi bir şey:
function searchQuery($text) {
$text = mysql_real_escape_string($text);
$result = mysql_query("SELECT ARTICLE_NO, USERNAME, ACCESSSTARTS, ARTICLE_NAME FROM {$table} WHERE upper ARTICLE_NAME LIKE '%" . $text . "%'");
if($result === false) {
return mysql_error();
}
$rows = array();
while($row = mysql_fetch_assoc($result)) {
$rows[] = $row;
}
return $rows;
}
Eğer (bunu yapmak için burada mysql_real_escape_string kullanılan ()) SQL enjeksiyon saldırıları önlemek için kullanıcı girişi kaçmak gerektiğini unutmayın. Sorgu başarısız olursa bu işlev aynı hata kodunu döndürür, böylece bir dizi ya da değilse görmek için sonucu kontrol etmelisiniz:
$result = searchQuery($_GET['query']);
if(!is_array($result) ) {
echo 'An error has occurred:' . $result;
} else {
//iterate over rows
}
Kaşlı ayraçlar {ile (IF / ELSE) mantıksal yapıları sarın. Bu okunabilmesi için daha iyi ve gereksiz hatalardan uzak durmanıza yardımcı olur.