Tenho um sistema de upload no qual eu envio o arquivo para o meu diretorio e a função ereg_replace retira caracteres indesejáveis como acentos e ç...
Até ai beleza, ele funciona perfeitamente com um pequeno problema que eu não consigo resolver:
Quero que a primeira letra seja maiúscula, quando eu envio por exemplo o arquivo "Área.pdf" eu quero que ele vá para o meu servidor como "Area.pdf" apenas sem o acento mas mantendo a primeira letra maiúscula, porém na prática isso não está funcionando, quando envio o arquivo citado acima ele aparece em meu servidor como "area.pdf" TUDO EM MINÚSCULO!
Vou postar o código abaixo, caso alguém saiba o que está errado por favor me dê uma luz, já tentei de tudo mas não consegui!
Segue o código:
[codebox]<?php
// Pega os Dados do Form
$PathForm = $_SERVER['PHP_SELF'];
// Checa se o Diretório existe
if(!file_exists(''))
// Prepara a variável caso o Formulário tenha sido Postado
$Titulo = isset($_POST['titulo']) ? $_POST['titulo'] : FALSE;
$Doc = isset($_FILES['documento']) ? $_FILES['documento'] : FALSE;
$Name = $_FILES['documento']['name'];
$Tmp = $_FILES['documento']['tmp_name'];
// Prepara as Variáveis para configuração do Arquivo
$Config = array();
// Destino da Imagem
$Config ['diretorio'] = '';
// Verifica se é um Documento
if($Doc)
{
// Construo um indece de erros
$Erro = array();
// Checa o mime-type do Arquivo
if(!eregi('(pdf)', $Doc['name']))
{
// Avisa se o Arquivo é inválido
$Erro [] = 'Documento em formato Inválido!';
$Erro [] = 'O Documento deve ser no formato .pdf';
}
// Se não houver erro algum, continua o processo
if(!sizeof($Erro))
{
// Gera o Nome do Documento
// Retira todas as Acentuações
$nome = $Name;
$nome = ereg_replace('[áàâãª]','a',$nome);
$nome = ereg_replace('[ÁÀÂÃ]','A',$nome);
$nome = ereg_replace('[éèê]','e',$nome);
$nome = ereg_replace('[ÉÈÊ]','E',$nome);
$nome = ereg_replace('[óòôõº]','o',$nome);
$nome = ereg_replace('[ÓÒÔÕ]','O',$nome);
$nome = ereg_replace('[úùû]','u',$nome);
$nome = ereg_replace('[ÚÙÛ]','U',$nome);
$nome = str_replace('ç','c',$nome);
$nome = str_replace('Ç','C',$nome);
$nome = ereg_replace(' ','',$nome);
$docNome = strtolower($nome);
// Caminho da onde o Arquivo ficará
$docDir = $Config ['diretorio'] . $docNome;
// Faz o upload do Arquivo
print "<pre>";
if (move_uploaded_file($Tmp, $docDir)) {
print "O arquivo foi carregado com sucesso.\n";
}
print "</pre>";
}
}
if($Doc && !sizeof($Erro))
{
?>
<?php
}
// Mas se ocorreu algum erro ou o Formuláro ainda não foi enviado
else
{
?>
<form method="post" action="<?php echo $PathFrom; ?>" enctype="multipart/form-data">
<div align="left">
<table width="354" border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="3" align="center"> </td></tr>
<tr>
<td colspan="3" align="center">
<p align="left"><b><font face="Verdana" size="2">Enviar Assembléias</font></b></td>
</tr>
<tr>
<td colspan="3" align="center"> </td>
</tr>
<tr>
<td colspan="3" align="center">
<p align="left"><font face="Verdana" size="1">OBS: Enviar arquivos somente
no formato <b>pdf</b></font></td>
</tr>
<tr>
<td colspan="3" align="center"> </td>
</tr>
<tr><td colspan="3" align="center"> </td></tr>
<?php
if(sizeof($Erro))
{
echo '<tr>';
echo '<td colspan="2" bgcolor="red" align="left">';
echo '<center><u>Ocorreu(ram) o(s) seguinte(s) erro(s):</u></center>';
echo '<br />';
foreach( $Erro as $err)
{
echo ' - '. $err .'<br />';
}
echo '</td></tr>';
}
?>
<tr><td align="center" width="1"> </td>
<td align="left" width="109"> <b><font face="Tahoma" size="1">Selecione o
Arquivo:</font></b></td>
<td align="left" width="244"><font size="1" face="Tahoma">
<input type="file" size="20" name="documento" /></font></td></tr>
<tr><td colspan="3" align="center"> </td></tr>
<tr>
<td colspan="3" align="center"> </td>
</tr>
<tr><td colspan="3" align="center"><font size="1" face="Tahoma">
<input type="submit" value="Enviar" style="float: left" /></font></td></tr>
<tr><td colspan="3" align="center"> </td></tr>
<tr><td colspan="3" align="center"> </td></tr>
</table>
</div>
</form>
<?php
}
?>[/codebox]
Valeu!
Abraços ;D
Edição feita por: Ricardo KaNu, 22/03/2009, 22:51.