Olá galera,
Hoje foi ensiná-los como fazer um simples sisteminha que envia imagens para o servidor, usando PHP.
Segue o código do arquivo
upload.php
<?php
//Diretório aonde ficará os arquivos
$dir = "./";
//Extensões permitidas
$ext = array("gif","jpg","png");
//Quant. de campos do tipo FILE
$campos = 6;
//Formulário
echo '<form method="post" action="'.$PHP_SELF.'" enctype="multipart/form-data">
Arquivo: <input type="file" name="file[]"><br />
Arquivo: <input type="file" name="file[]"><br />
Arquivo: <input type="file" name="file[]"><br />
Arquivo: <input type="file" name="file[]"><br />
Arquivo: <input type="file" name="file[]"><br />
Arquivo: <input type="file" name="file[]"><br />
<input type="submit" name="submit" value=" OK ">
</form>';
//Se for enviado
if (isset($_POST['submit'])) {
//Obtendo info. dos arquivos
$f_name = $_FILES['file']['name'];
$f_tmp = $_FILES['file']['tmp_name'];
$f_type = $_FILES['file']['type'];
//Contar arquivos enviados
$cont=0;
//Repetindo de acordo com a quantidade de campos FILE
for($i=0;$i<$campos;$i++){
//Pegando o nome
$name = $f_name[$i];
//Verificando se o campo contem arquivo
if ( ($name!="") and (is_file($f_tmp[$i])) and (in_array(substr($name, -3),$ext)) ) {
if ($cont==0) {
echo "<b>Arquivo(s) enviados:<br /></b>";
}
echo $name." - ";
//Movendo arquivo's do upload
$up = move_uploaded_file($f_tmp[$i], $dir.$name);
//Status
if ($up==true):
echo "<i>Enviado!</i>";
$cont++;
else:
echo "<i>Falhou!</i>";
endif;
echo "<br />";
}
}
echo ($cont!=0) ? "<br><i>Total de arquivos enviados: </i>".$cont : "Nenhum arquivo foi enviado!";
}
?>
Caso você deseje exibir as imagens já postadas, adicione o seguinte código:
<?php
// extençoes aceitas
foreach(array_merge(glob("*.gif"), glob("*.jpeg"), glob("*.jpg"), glob("*.png"), glob("*.JPG"), glob("*.PNG"), glob("*.GIF"), glob("*.JPEG")) as $arquivo ){
echo "<img src='".$arquivo."'<span class='style1'>--</span>";
}
?>
Espero ter ajudado.
Fonte: http://www.phplandia.net/