Posted on June 8th, 2010
1447 views Ce sunt formularele Html?
<form action="upload.php" method="post" enctype="multipart/form-data"> <input type="file" name="userfile" id="file"> <br /> <input type="submit" value="Upload" class="buton"/> </form> In continuare fisierul 'upload.php'. Permitem utilizatorului sa uploadeze doar imagini jpg, gif, bmp si png (celelalte tipuri de fisiere, posibil malitioase, cum ar fi fisiere executabile, fisiere .php, fisiere .js nu pot fi urcate). Cu ajutorul functiei substr() delimitam portiunea din fisier de care avem nevoie. Aceasta portiune este definita de inceputul strpos() si lungimea strlen() parametrului.
<?php $filename = "poza.bmp"; //Numele fisierului. $ext = substr($filename, strpos($filename,'.'), strlen($filename)-1); //Aflam extensia fisierului. echo "$ext"; ?> Rezultat:
<?php /* Titlu: Simple Upload Autor: Mozzartut Website: http://mozzartut.isgreat.org/simple-upload.php */ //Fisiere suportate (de ex. jpg/gif/bmp/png) $allowed_filetypes = array('.jpg','.gif','.bmp','.png'); //Marimea maxima a unui fisier (0.5MB) $max_filesize = 524288; //Directorul ce contine fisierele incarcate (files) $upload_path = './files/'; //Numele fisierului. $filename = $_FILES['userfile']['name']; //Aflam extensia fisierului. $ext = substr($filename, strpos($filename,'.'), strlen($filename)-1); //Verificam daca fisierul este acceptat. (jpg/gif/bmp/png) if(!in_array($ext,$allowed_filetypes)) die('Acest fisier nu este acceptat.'); //Verificam marimea fisierului (max 0.5MB) if(filesize($_FILES['userfile']['tmp_name']) > $max_filesize) die('Marimea fisierului este mai mare de 0.5MB.'); // Cream folderul "files" daca acesta nu exista if (!is_dir('files')) { mkdir('files', 0777); } //Verifica daca folderul exista si poate fi accesat. (files) if(!is_writable($upload_path)) die('Folderul specificat nu poate fi accesat. (CHMOD 777)'); //Mutam fisierul in folderul specificat. (files) if(move_uploaded_file($_FILES['userfile']['tmp_name'], $upload_path . $filename)) echo 'Fisierul a fost salvat cu succes. <a href="' . $upload_path . $filename . '" title="fisier" target="_blank"><br/><img src="' . $upload_path . $filename . '" width="120px"/></a>'; else echo 'A aparut o eroare. Mai incearca odata.'; echo "<br/><a href='index.php'>Incarca un fisier</a>"; ?> |