SQL sorgusu yapı uygulamaları

0 Cevap php

I $_GET parametreleri geçti dayalı dinamik değiştiren bir SQL sorgusu inşa ediyorum. Ben sadece bir 'kukla' kısıtlaması koyarak bir 'kabul edilebilir' bir uygulama olup olmadığını bilmek istiyorum, bu yüzden varlığına SQL dizesi kontrol etmek zorunda değilsiniz 'nerede' Ben yeni kısıtlamalar (her zaman) eklemeden önce.

Örneğin, 'kukla' kısıtlama ':

$sql = "select * from users u where u.id != 0";

Şimdi, daha fazla kısıtlama eklemek zorunda olmadığını belirlemek her blokta, ben sadece bunu yapabilirsiniz:

if (!empty($uid))
    $sql .= " and (u.id = {$uid})";

Bunu yapmak yerine:

if (!empty($uid)) {
    $sql .= strpos($sql, "where") === false ? " where " : " and ";
    $sql .= " (u.id = {$uid})";
}

0 Cevap