if (!$submit) { form method='post' action='enviar.php'> <b>Foto:</b><br> <input enctype='multipart/form-data' type='file' size=30 name='file'><br> <input type='submit' value='cadastrar' name='submit'> } else { $arquivo = isset($_FILES["file"]) ? $_FILES["file"] : FALSE; $imagem_nome = "nome.jpg"; $imagem_dir = "arquivos/" . $imagem_nome; move_uploaded_file($arquivo["tmp_name"], $imagem_dir); echo "Sua foto foi enviada com sucesso!"; }
Pois bem, sem definir nada no php.ini em "upload_tmp_dir ="(ta comentado com um ";") sempre que envio a imagem deveria ir para a pasta arquivos/ que está acima da pasta que ta o meu envia.php certo ? pois bem, NÃO vai para lá, muito estranho, pois sempre funcionou! Ja fiz vários testes e nunca vejo aonde está indo parar o arquivo. Ja vi ele algumas vezes na pasta raiz do APACHE, nem é no htdocs(To usando o Apache 1.3.33 e o PHP 4.3.11) e ta muito esquesito!
O que faço para que seja padrão a ida dos arquivos na pasta que ta o script ? Eu realmente nunca vi algo deste tipo acontecer! =\
Se alguém aí tiver um script simples de exemplo só pra eu testar rapidamente também o faço, mas acredito que de nada vai adiantar, ja testei vários script prontos também...
se alguém tiver uma luz, valeu desde já!
EDITADO ----------------
so para completar agora... fiz um teste, usando o script acima funciona sim, mas usando QUERYSTRING NÃO! Pq ?
Fiz o arquivo teste.php desta forma:
<form action="teste.php" method="post" enctype="multipart/form-data"> Envie sua foto para o site! <input type="file" name="foto"><BR> <input type="submit" value="Enviar Foto!"> </form> <?php $erro = $config = array(); // Prepara a variável do arquivo $arquivo = isset($_FILES["foto"]) ? $_FILES["foto"] : FALSE; // Pega extensão do arquivo preg_match("/\.(gif|bmp|png|jpg|jpeg){1}$/i", $arquivo["name"], $ext); // Gera um nome único para a imagem $imagem_nome = md5(uniqid(time())) . "." . $ext[1]; // Caminho de onde a imagem ficará $imagem_dir = "../arquivos/noticias/" . $imagem_nome; // Faz o upload da imagem move_uploaded_file($arquivo["tmp_name"], $imagem_dir); echo "Sua foto foi enviada com sucesso!"; ?>
e ele está enviando certinho para a pasta, ja O MESMO script mas com querystring(o action apontando p/ admin.php?area=geral&acao=noticias&subacao=adicionar ele ñ move a figura, pq ?