Bir dosyayı devre dışı o (php) hata oluşturur ise şunlardır

2 Cevap php

Benim komut dosyası için basit bir eklenti sistemi uygulamak istiyoruz. Ben kullanıcı olarak kullanılabilir seçer eklentileri dosyaları dahil olacak.

Dosyaları herhangi bir ayrıştırma hatası varsa o eklenti girişi kaldırmak için db kesmek kadar Şu anda, o, aşağı gitmek tam bir şey neden olur.

Bunu yapmanın kolay bir yolu var mı? (Nedense en az ayrıştırma hataları dosyaları kontrol)?

2 Cevap

Sen dosyasını dahil etmeye çalışan bir PHP dosyası bir HTTP isteği yapmak ve çıkışları sonunda "Tamam" olabilir.

Check_include.php:

$filename = $_GET["plugin"];

$filename = sanitize_filename($filename); // Here you make sure only plugins can be loaded

include ($filename);
echo "OK";

, sonra admin panelinde veya ne olursa olsun, çağrı

file_get_contents("http://mydomain/check_include.php?plugin=my_new_plugin");

ve sonuç kelime "OK" içerip içermediğini görmek. Sonuç tamam ise, hiçbir ölümcül hata oldu ve eklentiyi aktif hale getirebilirsiniz; aksi halde, çıktılarının bunu dahil çalışırken çıkışı var hata mesajı eşitlemek olabilir.

WordPress yeni eklentileri kontrol etmek için bir IFRAME içeren bu bir varyasyonu kullanır.

Not: Bir HTTP isteği pahalı yapma. Hiçbir koşul altında ama sadece bir kez yüklemesinde, bu eklenti dahil her zaman yapmak gerekir. / Devre dışı eklentileri etkinleştirmek için (eklenti adının önünde, örneğin bir çizgi _) Bir çeşit bayrağı kullanın.

No Ayrıştırma hatası kurtarmak değil ölümcül bir hatadır.