file, PHP, MySQL

Secţiune dedicată începatorilor.

Moderatori: Moderatori, Start Moderator


beng
Junior Member
Mesaje: 34
Membru din: Mar Noi 12, 2013 7:15 pm
Localitate: Bucuresti
Contact:

Re: file, PHP, MySQL

Mesajde beng » Mie Aug 05, 2015 11:12 am

dianagaby2002, n-are cum sa-ti aparta 3 nume diferite de poza pentru ca tu te uiti dupa if(isset($_FILES['picture1'])) iar in html numele este poza1, nu picture1: <input id="poza1" name="poza1" type="file">

dianagaby2002
PHPRomania Supporter
Mesaje: 19
Membru din: Mie Aug 05, 2015 10:09 am

Re: file, PHP, MySQL

Mesajde dianagaby2002 » Mie Aug 05, 2015 11:28 am


nevvermind
Senior Member
Mesaje: 1264
Membru din: Mar Iun 22, 2010 3:17 pm

Re: file, PHP, MySQL

Mesajde nevvermind » Mie Aug 05, 2015 11:34 am

Cateva completari:

a) Tabelului "news" ii lipseste o coloana de ID. Nu-i gresit, dar nu e deloc o idee buna sa omiti coloana aia. Fa una numita "news_id", de tip int 11.

b) De ce tabelul are atat de multe coloane de poze? Fa un tabel separat pentru poze: news_pic_id (int, 11), news_id (int, 11, FK news.news_id <-- asta-i coloana pe care o vei face in a) ), pic_path.

c) Variabile in romana, nume de tabel in engleza, un post in engleza, intr-un forum romanesc. Decide-te, ca nu arata nici bine, nici consistent.
Eu zic sa scrii cod in engleza (numai noob-ii scriu in romana) si, cand vorbesti cu lumea d-aci, scrie in romana.

Later edit: abia acum am citit ca ai dat copy paste dintr-un forum englez.

d) Nush cat de mult stii despre upload, dar nu procedezi corect: PHP vede ca sunt transmise informatii ca "fisiere", ia datele din body-ul requestului si creeaza fisierele in folderul temporar de upload (vezi care-i folderul facand "echo ini_get('upload_tmp_dir');"), apoi populeaza array-ul $_FILES cu date despre acele fisiere. Dar ele sunt tot in "upload_tmp_dir". Daca faci "$_FILES['picture1']['tmp_name']" ai sa vezi despre ce vorbesc. Pana cand nu muti fisierele din acel folder temporar unde vrei tu (cu "move_uploaded_file()"), in urmatorul request nu vei mai avea acces la ele, fiindca vei pierde legatura cu ele. Doar acea noua cale, unde le-ai mutat, trebuie salvata in DB. Salvand numele fisierelor nu te ajuta prea mult.

e) Nu verifici bine daca s-a facut upload. Citeste mai multe aci http://php.net/manual/en/features.file-upload.php (mai ales primul comentariu).

f) Daca faci upload aiurea (de ex, nu verifici daca fisierele urcate sunt intr-adevar poze: poate-s executabile). De asta, iti sugerez sa folosesti un tool deja facut, ca-s multe: https://packagist.org/search/?q=upload. https://github.com/brandonsavage/Upload arata bine.
Facusi un canal de php pe freenode - ##php-ro : https://webchat.freenode.net/


Înapoi la “PHP Incepători”

Cine este conectat

Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 6 vizitatori