Pop-Up PHP formu

3 Cevap php

Ben bu sitede daha önce yapılan gördüm, ve ben bunu hakkında gitmek nasıl merak ediyorum. Ben butonuna tıklayarak, ben bir php sayfası $ _POST üzerinden bir var geçmek ve bu php sayfası kullanıcının kullanabileceği şekilde pop-up olmak olurdu bir veritabanı sorgu sitede bir düzenleme formu açılır çalışıyorum Form bu veritabanı giriş bilgilerinizi düzenlemek için o php sayfasında yer.

Bu herhangi bir yardım yapılanma mutluluk duyacağız. Teşekkürler!

3 Cevap

İş Akışı:

  1. Kullanıcı tarayıcıda sorgu liste gider
  2. Kullanıcı tıklama düzenlemek (colorbox etkin bağlantı)
  3. Istek $ _GET param dayalı bir sorgu düzenleme formu döndüren bir PHP komut dosyası gönderilir GET
  4. Kullanıcı sorguyu düzenler ve presler kaydetmek
  5. Formu yeni sorgu doğrular ve depolayan başka bir PHP (POST) gönderir
  6. PHP Script sorgu listesi yönlendirir (tam sayfa reload)

Nelere ihtiyacınız var:

  • JQuery + Colorbox (veya benzer modal kütüphane)
  • ana sayfa (nereye düzenleme tıklıyorsunuz)
  • php tarafından oluşturulan bir html formu
  • form yazı gönderme işlemek için php

Siz formu içerecek yeni bir pencere açmak için JavaScript kullanmak gerekir. Böyle çalışacak aşağıdaki biri olarak basit bir fonksiyon:

function openWindow(theURL,winName,features) { window.open(theURL,winName,features); }

Sonraki ön sonunda düzenlenebilir veritabanı satırı için, bu işlevini çağırır ve GET değişkeni ile satır kimliği kabul etmek ve düzenleme için bir form sunmak için kullanan yeni bir komut dosyası açan bir düzenleme bağlantısını ekleyebilirsiniz.

<a href=\"javascript:openWindow('item_add.php?id=1','','width=500,height=300');\">

Item_add php GET diziden id değişkeni kabul etmelidir. Bu script teslim olduğunda, bu kimlik değişken üzerinde bir güncelleştirme sorgusunu arayacak bir HTML formu içermelidir. Tamamlama günü, düzenleme penceresini kapatmak ve orijinal arama sayfasındaki içeriğini yenilemek için başka bir javascript işlevini çağırabilirsiniz. POST işlemi ve veritabanı güncellemeleri sonra script vücudunda onLoad ile bu işlevini çağırın.

                     function redirect_to(where, closewin)
                 {
                         opener.location= 'index.php?' + where;

                         if (closewin == 1)
                         {
                                 self.close();
                         }
                 }

<body onload="redirect_to('index.php','1')">

Bu benim daha önce kullanmış sadece tekniktir, ancak bağlama bağlı bazı AJAX çözümleri içine bakmak isteyebilirsiniz.

Sadece formu eylem url posta yoluyla göndermek ve daha sonra target = "_blank" veya form etiketi ne olursa olsun de koyduk böylece HTML (gibi 4.0) eski sürümleri, form etiketi üzerinde bir hedef niteliği sağlar. Eğer popup boyutunu kontrol etmek istiyorsanız, JavaScript aracılığıyla göndermek yapmak için daha iyi olabilir.