Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Portal DJ

[Resolvido] Criar diretório

Recommended Posts

Estou tentando criar um album de fotos, ainda no comecinho, engatinhando a coisa, contudo, to querendo criar o form de criação de diretório/pasta, usei esse código:

 

<?
if($acao == "criar"){
 $pasta = $_POST["pasta"];
 mkdir ("cria_pasta/$pasta", 0777 );   // aqui e o diretorio aonde será criado tipo home/public-html/
 echo "Pasta <b>$pasta </b> criada com sucesso!!";
}
?>
<form action="?acao=criar" method="post">
  <table border=0>
    <tr><td>Nome da Pasta</td><td><input type="text" name="pasta" maxlength="13" size="13"><br></td></tr>
    <tr><td colspan=2><input type=submit value="Criar pasta!"></td></tr>
  </table>
</form>
Mas não ta funcionando, não sei onde ta o erro, na parte onde cria a pasta eu quero criar no mesmo diretório onde encontra se o script, mas queria também saber como direcionar para outra parte, acho q é aí q to errando.

Desde já agradeço pelo apoio da galera profissional.

Compartilhar este post


Link para o post
Compartilhar em outros sites

para criar no mesmo diretório do script:

 

mkdir( "diretorio" , pemrissao );

no diretório superior:

mkdir( "../diretorio" , pemrissao );

e assim por diante

 

 

Verifique se "cria_pasta" já existe. Ele precisa existir, para que subdiretórios sejam criados nele

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado pela orientação, mas já verifiquei se existe a pasta e a resposta é sim, mas mesmo assim o código não está funcionando, salvem-me! rsrsr. Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

verifique se você possui permissão de escrita nesse diretório

 

execute novamente o script com este trecho no topo:

ini_set( 'display_errors', 1 );
error_reporting( E_ALL );

isso ativa a exibição de todos os erros/warnings

 

 

também dê um echo em $pasta, para ve se ela está com valor válido

Compartilhar este post


Link para o post
Compartilhar em outros sites

É, to apanhando mesmo, verifiquei todo código como solicitado pelo Beraldo, mas mesmo assim ainda não ta funcionando. Caso alguém conheça outro código funcional, agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

crie um script com apenas este conteúdo e o teste no mesmo local onde está o script que postou:

 

<?php
ini_set( 'display_errors', 1 );
error_reporting( E_ALL );

mkdir( 'meu_diretorio', 0755 );
?>

poste o resultado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Apareceu isso aqui: Warning: mkdir() [function.mkdir]: File exists in C:\wamp\www\cria_pasta\index.php on line 18

Porem criou a pasta

 

Na verdade eu quero que esse sistema funcione com um formulário, assim eu poderia criar as pastas onde vou postar as fotos, através de um upload que escolhe em que pasta vão as imagens, entenderam?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Verifique as permissões de escrita dentro do diretorio onde você está querendo criar este diretorio!

 

Citei isso no [anchorlink=1518557]post $3[/anchorlink]

 

Você também já citou isso. Evite redundância de conteúdo

 

 

Segundo o usuário, ele já verificou as permissões

Compartilhar este post


Link para o post
Compartilhar em outros sites

O Warning deve ter ocorrido na segunda execução, após o diretório já ter sido criado.

 

Tente executar seu script desta maneira:

<?php
if($acao == "criar"){
 $pasta = $_POST["pasta"];
 echo "criando cria_pasta/" . $pasta
 mkdir ("cria_pasta/" . $pasta, 0777 );   // aqui e o diretorio aonde será criado tipo home/public-html/
 echo "Pasta <b>$pasta </b> criada com sucesso!!";
}
?>
<form action="?acao=criar" method="post">
  <table border=0>
    <tr><td>Nome da Pasta</td><td><input type="text" name="pasta" maxlength="13" size="13"><br></td></tr>
    <tr><td colspan=2><input type=submit value="Criar pasta!"></td></tr>
  </table>
</form>

poste o resultado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pelo erro relatado, este diretorio foi criado e não pode ser criado novamente pois já existe.

 

Tente fazer desta forma:

if (!is_dir("cria_pasta/"))
   mkdir ("cria_pasta/" . $pasta, 0777 );

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu Beraldo, agora deu certinho! Graças a você conseguir a primeirinha fase do que quero. Obrigado também ao Jaime Pinheiro por se esforçar em ajudar. você manjam mesmo e ainda ajudam os leigos como eu. Valeu!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.