Cara eu to com um comando basico que é o mkdir, estou utilizando ele para criar pasta de eventos no meu computador fico tudo 100% apos mandar para o servidor tive um problema pois não criava as pastas, normal dei CHMOD 777 fico tranquilo.. porem as pasta são criadas por padrão 755 e eu não estou conseguindo por as imagens dentro dela, diz que não tenho permissão eu deletei a pasta crie ela manualmente e deu certo, então eu tentei um (Mkdir,0777,true) para cria a pasta com CHMOD 777 porem não resolveu, então venho aqui compartilhar esse problema que estou tendo talvez a experiencia de alguns que já passaram por isso ou que tem o conhecimento aprofundado da questão poder me ajudar...
Desde já agradeço . Abraços.
Segue abaixo o código
<?php
class cadastroEvento{
function cadastrar() {
$ext = array("image/gif","image/jpeg","image/png","image/jpg");
$imagemTmp = $_FILES['fileImage']['tmp_name'];
$nomeImgTmp = $_FILES['fileImage']['name'];
$tipoImgTmp = $_FILES['fileImage']['type'];
$tamanhoImg = $_FILES['fileImage']['size'];
$tamanhosD = getimagesize($imagemTmp);
//// Verifica largura
$dimensao = $tamanhosD[0]." x ".$tamanhosD[1];
$titulo = $_POST['titulo'];
$comentarios = $_POST['comentarios'];
$fotografo = $_POST['fotografo'];
$data_evento = $_POST['data_evento'];
$local_evento = $_POST['local_evento'];
$cidade = $_POST['cidade'];
$evento_id = strtolower($_POST['pasta']);
if ( $imagemTmp != "none" ){ //Identifica se variavel possui um arquivo
$tipoimgcmd = null;
if(($tipoImgTmp == $ext[0])||($tipoImgTmp == $ext[1])||($tipoImgTmp == $ext[2])||($tipoImgTmp == $ext[3])){
switch ($tipoImgTmp) {
case $ext[0]:
$tipoimgcmd = 'gif';
break;
case $ext[1]:
$tipoimgcmd = 'jpg';
break;
case $ext[2]:
$tipoimgcmd = 'png';
break;
case $ext[3]:
$tipoimgcmd = 'jpg';
break;
}
// Gera um nome único para a imagem
$nome_imagem = md5(uniqid(time()));
$nome_final = $nome_imagem.".".$tipoimgcmd;
//verifica existencia do diretório
if(is_dir("fotos/".$evento_id)) {
// Caminho de onde ficará a imagem
$caminho_imagem = "fotos/".$evento_id."/".$nome_final;
}else {
//criar diretório
$caminho_imagem = "fotos/".$evento_id;
mkdir($caminho_imagem,0777,true);
$caminho_imagem = "fotos/".$evento_id."/".$nome_final;
}
$up = move_uploaded_file($imagemTmp, $caminho_imagem);
}
} else {?>
<script type="text/javascript">
alert('Nenhum Arquivo foi Selecionado');
history.back();
</script><?php
}
if (($up==true)){
$qry = "INSERT INTO eventos VALUES( NULL,'$titulo','$comentarios','$fotografo','$data_evento','$local_evento','$cidade','$caminho_imagem','$evento_id','0', now())"; //Sql para ensirir campos no Banco
$exeSQL = mysql_query($qry) or die('Não foi possivel gravar a imagem no Banco de Dados: '+ mysql_error()); //Executa o SQL
if ($exeSQL) {
echo"<div align='center'><font size=4>Cadastro Efetuado com Sucesso! <br> </font></div>";
}
}else{
?>
<script type="text/javascript">
alert('Erro no Upload da Imagem tente novamente!');
window.location = 'cad_anuncio.php'
</script>
<?php
}
}
}
?>
Pergunta
JaguA
Salve galera ...
Cara eu to com um comando basico que é o mkdir, estou utilizando ele para criar pasta de eventos no meu computador fico tudo 100% apos mandar para o servidor tive um problema pois não criava as pastas, normal dei CHMOD 777 fico tranquilo.. porem as pasta são criadas por padrão 755 e eu não estou conseguindo por as imagens dentro dela, diz que não tenho permissão eu deletei a pasta crie ela manualmente e deu certo, então eu tentei um (Mkdir,0777,true) para cria a pasta com CHMOD 777 porem não resolveu, então venho aqui compartilhar esse problema que estou tendo talvez a experiencia de alguns que já passaram por isso ou que tem o conhecimento aprofundado da questão poder me ajudar...
Desde já agradeço . Abraços.
Segue abaixo o código
<?php class cadastroEvento{ function cadastrar() { $ext = array("image/gif","image/jpeg","image/png","image/jpg"); $imagemTmp = $_FILES['fileImage']['tmp_name']; $nomeImgTmp = $_FILES['fileImage']['name']; $tipoImgTmp = $_FILES['fileImage']['type']; $tamanhoImg = $_FILES['fileImage']['size']; $tamanhosD = getimagesize($imagemTmp); //// Verifica largura $dimensao = $tamanhosD[0]." x ".$tamanhosD[1]; $titulo = $_POST['titulo']; $comentarios = $_POST['comentarios']; $fotografo = $_POST['fotografo']; $data_evento = $_POST['data_evento']; $local_evento = $_POST['local_evento']; $cidade = $_POST['cidade']; $evento_id = strtolower($_POST['pasta']); if ( $imagemTmp != "none" ){ //Identifica se variavel possui um arquivo $tipoimgcmd = null; if(($tipoImgTmp == $ext[0])||($tipoImgTmp == $ext[1])||($tipoImgTmp == $ext[2])||($tipoImgTmp == $ext[3])){ switch ($tipoImgTmp) { case $ext[0]: $tipoimgcmd = 'gif'; break; case $ext[1]: $tipoimgcmd = 'jpg'; break; case $ext[2]: $tipoimgcmd = 'png'; break; case $ext[3]: $tipoimgcmd = 'jpg'; break; } // Gera um nome único para a imagem $nome_imagem = md5(uniqid(time())); $nome_final = $nome_imagem.".".$tipoimgcmd; //verifica existencia do diretório if(is_dir("fotos/".$evento_id)) { // Caminho de onde ficará a imagem $caminho_imagem = "fotos/".$evento_id."/".$nome_final; }else { //criar diretório $caminho_imagem = "fotos/".$evento_id; mkdir($caminho_imagem,0777,true); $caminho_imagem = "fotos/".$evento_id."/".$nome_final; } $up = move_uploaded_file($imagemTmp, $caminho_imagem); } } else {?> <script type="text/javascript"> alert('Nenhum Arquivo foi Selecionado'); history.back(); </script><?php } if (($up==true)){ $qry = "INSERT INTO eventos VALUES( NULL,'$titulo','$comentarios','$fotografo','$data_evento','$local_evento','$cidade','$caminho_imagem','$evento_id','0', now())"; //Sql para ensirir campos no Banco $exeSQL = mysql_query($qry) or die('Não foi possivel gravar a imagem no Banco de Dados: '+ mysql_error()); //Executa o SQL if ($exeSQL) { echo"<div align='center'><font size=4>Cadastro Efetuado com Sucesso! <br> </font></div>"; } }else{ ?> <script type="text/javascript"> alert('Erro no Upload da Imagem tente novamente!'); window.location = 'cad_anuncio.php' </script> <?php } } } ?>.
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.