Bu projeyi besteci entegrasyonu, birim testi ve referanslara göre argümanları kabul etmeyi daha iyi bir şekilde ele almak için yakın zamanda güncelledim (bu, php 5.6'ya güncellemeyi gerektirir).
:
Sana sağlamalıdır potansiyel sorgu dizesi, bir yorumu görüntülemesine izin vermek için öntanımlıyı mysqli
ve mysqli_stmt
sınıfları uzatmak sınıflar kümesi oluşturduk neyi aradığınız
Bu https://github.com/noahheck/E_mysqli sizin için (yakın) drop-in yerine geçer, normal özel mysqli_stmt
nesnesi döndüren mysqli
nesne zaman prepare()
sorgu dizesi.
INSERT INTO registration SET name = 'John Doe', email = '[email protected]'
uzantısını kullanarak bazı uyarılar vardır: içinde
$mysqli = new E_mysqli($dbHost, $dbUser, $dbPass, $dbName);
$query = "INSERT INTO registration SET name = ?, email = ?";
$stmt = $mysqli->prepare($query);
$stmt->bind_param("ss", $_POST['name'], $_POST['email']);
$stmt->execute();
echo $stmt->fullQuery;
neden olur: Parametrelerinizi bağlayıcı sonra, E_mysqli
sen stmt
nesnenin yeni bir özelliği olarak ortaya çıkan sorgu dizesi görüntülemek sağlayacak (github projesinde README'de açıklanmıştır), ancak uygulamanızın sorunlu alanlarını gidermek veya prosedürelden nesneye yönelik bir tarza geçiş yapmak için bu, çoğu kullanıcı için bir yardım düzeyi sağlamalıdır.
Github projesinde ana hatlarıyla belirttiğim gibi, mysqli
uzantısını kullanan pratik bir deneyimim yok ve bu proje kardeş projesi olan kullanıcıların isteği üzerine oluşturuldu. Bunu üretimde kullanan devler çok takdir edilecektir.
Yasal Uyarı - Dediğim gibi, bu uzantıyı yaptım.
kuyu biraz rahatsız edici = \ İdam edilen ifadeyi getirmenin bir yolu olacağını düşünürdüm – Stomped
PHP tarafında buna ihtiyaç duyarsanız, temelde hata ayıklama nedenleriyle, SQL'i yeniden yapılandırabilirsiniz. ifadesinin yürütülmesine eşdeğer olan sorgu: yer tutucuları değişkenlerin değerlerine göre değiştirmeniz gerekir * (veriden kaçmak, elbette size bırakılacaktır) * ;;; Buna sık sık ihtiyacınız varsa, bunu sizin için yapan bir işlev yazabilmelisiniz; Diğer bir deyişle, bir çift var_dump 'MySQL sunucusuna hangi verilerin gönderildiğini görmenize yardımcı olmalıdır. –
@stomped Nokta, çalıştırılan bir ifadenin olmamasıdır. Bu adım tamamen atlandı. – troelskn