html seçilen dosya upload ve süreç kullanıcı, javascript ve php

2 Cevap php

Ben bir kullanıcı bir dosyayı seçin ve ardından php db içerikleri koyduk istiyorum. Şimdi (php dosyasını işleme) son bölümü kolaydır. Ama yeni bir sayfa yükleme whithout kullanıcı tarafından seçilen dosyayı işleyebilir bir yolu var mı?

Ben şu kullanıyorsanız:

<FORM ACTION="upload.php" METHOD="post" ENCTYPE="multipart/form-data">
<INPUT TYPE="file" NAME="somefile"><BR />
<INPUT TYPE="submit" NAME="submit" VALUE="Upload">
</FORM>

Page upload.php otomatik olarak bir veritabanında yüklenen dosya ekleyebilirsiniz sonra yükler.

Ben dosyayı işlemek için javascript, php ve xajax bir arada kullanmak istiyorum. Böyle bir şey mümkün olduğunu sanmıyorum:

<FORM ACTION="javascript:xajax_proces_file()" METHOD="post" ENCTYPE="multipart/form-data">
<INPUT TYPE="file" NAME="somefile"><BR />
<INPUT TYPE="submit" NAME="submit" VALUE="Upload">
</FORM>

Dosya işlevi xajax_process_file () çağrıldığında tarih değil çünkü. Yoksa değil mi? Ben tam javascript, html ve php ile yüklenenler prensibini kavramak yok düşünüyorum.

Herhangi bir yardım ve ya da açıklama çok takdir edilmektedir.

2 Cevap

Bu iki aşamalı bir süreç olarak düşünmek yardımcı olabilir.

İlk olarak, kullanıcı formu doldurur ve teslim - bir adım.

İkinci (varsayılan eylem olan) belirtilen hedef dosya formdan girdi alır ve ne olursa olsun yapmak için kullanır. Neredeyse bir bağlantı olarak bir formu "eylem" düşünmek olabilir - bir bağlantı tıklama varsayılan eylem bağlantının sonucunu görüntülemek için. Aynı form eylem için de geçerli - form eylem sonucu görüntülemek.

Şimdi, belirli bir olay için bir elemanın varsayılan eylemi devre dışı bırakmak için JavaScript aracılığıyla mümkündür. Bu (- URL çubuğu veya bir sayfa bağlantısını veya bir Google arama sonucu olmadığını her sayfa isteği budur) HTTP isteği göndermek / almak için bir tarayıcı, HTTP mekanizması erişmek için JavaScript aracılığıyla da mümkündür.

Bir web sunucusu ve istekleri göndermek için bir tarayıcı, HTTP mekanizmasını kullanmak için JavaScript kullanarak mümkün geleneksel bir click olayı kullanmadan geri bir yanıt alırsınız - ve bu AJAX basit açısından budur. Daha sonra "kapatmak" eylemleri varsayılan ve bunun yerine bir sunucudan bilgi almak ve hiç sayfayı yenilemek zorunda kalmadan sayfaya eklemek için size belirtilen eylemi takip JavaScript kullanımı ile birleştirmek.

Belirli bir öğe için meydana gelen Varsylan eylemi önlemek için birçok kez, sizin kod return false. Aynı formunuz için de geçerli. Javascript kullanarak:

form.onSubmit = function() {
  blah blah blah.....Use ajax to send the information to the form handler
  return false; //Prevents the defualt action of the submit event
}

AJAX gerçekten yeni iseniz, ben bu tutorial ve sonra bu one kontrol öneririz. Son olarak, ben size yardımcı olmak için jQuery gibi bir JavaScript çerçeve kullanarak tavsiye ederim - o müthiş ve büyük bir sürü şey yapar, ama aynı zamanda kolay ve AJAX işlevsellik inşa etti.

Burada başka bir tutorial bir form yapmak için hiçbir sayfayı yenileyin (jQuery kullanır) ile teslim olmaktır.

alternatif bir formu bir iframe eylemi yönlendiren yapmak, iframe sorgu işledikten sonra, baba formu temizlemek için JS tarafından devam