array_map / array_walk geçersiz geri arama, bulunamadı, ve / veya tanımsız raporlama tutar

0 Cevap

Ben sadece benim form doğrulama için daha şık bir otomatik çözüm istedi. PHP.net ben SQL enjeksiyon sayfasından serin class komut dosyası bulundu. İşte bu kodu (değiştirilmiş) olduğunu. Bu benim $_POST dizi geçmesi ve doğrulama işlevi uygulamak için varsayalım.

class secure
{   
    function secureSuperGlobalPOST($v)
    {
    $_POST[$v] = htmlspecialchars(stripslashes($_POST[$v]));
    $_POST[$v] = str_ireplace("script", "blocked", $_POST[$v]);
    $_POST[$v] = mysql_escape_string($_POST[$v]);
    return $_POST[$v];
    }

    function secureGlobals()
    {
    // This was originally array_walk; I'm just trying to figure out what's up...
    array_map('secureSuperGlobalPOST', $_POST);
    }
}

// This last line is attempt at using it. This was not provided with the code.
secure::secureGlobals();

Öyleyse ben bu hatayı alıyorum:

_ _ "Uyarı: \ wamp \ www \ sitem \ hattında 19 register.php: array_map () parametre 1 geçerli bir geri çağırma, işlev 'secureSuperGlobalPOST' bulunamadı veya C geçersiz işlev adı olmasını beklediğini"

Ben sonsuza kadar seyir olmuştur, ama bu, (aynı sınıfta bulunuyor) bulundu, ya da neden geçersiz adı (aynı tam adı!) Olurdu değil geçerli olmaz neden ben çözemiyorum.

0 Cevap