PHP ile bir MySql DB için bir dosya upload

3 Cevap php

I want the users to upload files through my webapp I am developing in PHP usinig MySql in the backend. I want to store the files in the database. I am facing problems in doing so. Also, once the file is stored in a Database how do we go for downloading it, displaying it correctly in the webapp (the file type, and other attributes of the file).

Ben benzer bir form kullanabilirsiniz:

<FORM METHOD="post" ACTION="fileUpload.php" ENCTYPE="multipart/form-data">
<INPUT TYPE="hidden" NAME="MAX_FILE_SIZE" VALUE="3000000">
<INPUT TYPE="hidden" NAME="action" VALUE="upload">
<TABLE BORDER="1"> <TR> <TD>Description: </TD> <TD><TEXTAREA NAME="txtDescription" ROWS="10" COLS="50"> </TEXTAREA></TD> </TR> <TR> <TD>File: </TD> <TD><INPUT TYPE="file" NAME="binFile"></TD> </TR> <TR> <TD COLSPAN="2"><INPUT TYPE="submit" NAME="Upload" VALUE="Upload"></TD> </TR> </TABLE> </FORM>

but when i submit it and i print out the $_POST array i get : Array ( [MAX_FILE_SIZE] => 3000000 [action] => upload [txtDescription] => jassfhjabsf [Upload] => Upload )

I am unable to understand where the file content "binFile" is getting lost. Can anybody please help me?

Regards, Mayank.

3 Cevap

Sen PHP kılavuzun yükleme bölümüne bakmak isteyebilirsiniz: {[(0)];} muhtemelen iyi bir başlangıç ​​olurdu ;-)

, En azından, örnek düşünen - Örneğin, sen dosyanın bilgiler $_FILES içinde ve değil $_POST (bkz. POST method uploads) mağaza olduğunu görebilirsiniz Sana $_POST dosyanın arıyor varsayalım, ve $_FILES.

sizin durumda, giriş alanını dikkate alınarak, "binFile", muhtemelen var_dump (or any equivalent) $_FILEs['binFile'] kullanmak isterdim adlandırılmıştır İçinde ne olduğunu görmek için ;-)

Ardından, is_uploaded_file and move_uploaded_file dosyası kendisi ile çalışmak için kullanabilirsiniz.


Then, are you sure you want to store the file's content into the Database, and not on disk, only storing into DB the path to the file ?

PHP özgü değil, ama fikirleri hala doğru olmalı - Storing Images in DB - Yea or Nay?: Bu konuda, bir bu soruya bakmak ve cevapları alabilir.

Maybe Where to store uploaded files (sound, pictures and video) could help too ;-)
Same about Storing a small number of images: blob or fs?, and/or Store pictures as files or in the database for a web app?

Yüklediğiniz dosya yükleme dizinine gider.

Sen $_FILES['binFile']['tmp_name'] içine bakarak dosyanın adını alabilirsiniz

Sen, komut tamamlanmadan önce dosya ile bir şeyler yapmak gerektiğini, aksi takdirde web sunucusu silecektir.

Sen dosyanın içeriğini okumak ve BLOB sütuna içine koymak gerekir.

Bunu taşımak kadar bu tmp dizininde bulunuyor

$userfile = $_FILES['binFil']['tmp_name'];
move_uploaded_file($userfile , "somedir");

Bunu gibi bir şey ile ne tür algılamalıdır Afterwords

$userfileExt = array_pop(explode(':', $userfile));