Ir para conteúdo
Visualizar no app

Uma forma melhor de navegar. Saiba mais.

MM Fórum

Um app em tela cheia na sua Tela de Início com notificações push, avisos e mais.

Para instalar este app no iOS/iPadOS
  1. Toque no ícone de Compartilhamento no Safari
  2. Role o menu e toque em Adicionar à Tela de Início.
  3. Toque em Adicionar no canto superior direito.
Para instalar este app no Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Gravando imagens

Featured Replies

Postado

Oi pessoal

Uma amiga minha criou um simples cadastro de imagens para mim. Ela fez no wamp e estou tentando rodar no xampp e não estou conseguindo.

Já alterei as permissões das pastas para leitura e gravação, porém, mesmo assim nada acontece.

Alguém pode me dar uma luz? hehehe

Valeu.

Gustavo Severo

  • Respostas 5
  • Visualizações 806
  • Criado
  • Última resposta

Top Postadores Neste Tópico

Postado

o path de onde as imagens serão salvas esta correto?

lembre-se que o path do windows e do mac são completamente diferentes.

Postado

Como disse o Hercules, dá uma olhada nos caminhos para gravação das imagens, você está movendo elas, copiando. Outra coisa que você pode fazer é ativar a exibição dos erros dá uma olhada em <http://php.net/manual/en/function.error-reporting.php> caso não esteja sendo exibido poste o código que faz o envio para darmos uma olhada.

Postado
  • Autor

ooredroxoo, aqui ta o código de upload da imagens... Vejam se ajuda. Valeu

function upload_varias_imagens($envarquivo, $diretorio) {

$retorno = '';

$_recebe = sizeof($envarquivo);

$pasta_dir = $diretorio . "/"; //diretorio dos arquivos

//se não existir a pasta ele cria uma

if (!file_exists($pasta_dir)) {

mkdir($pasta_dir);

chmod ("/acharimoveis/painel/$pasta_dir", 0755);

}

for ($i = 0; @$i < $_recebe; $i++) {

if ($_FILES['foto']['name'][$i] <> '') {

$imagem_nome = $_FILES['foto']['name'][$i];

$tamanho_arquivo = $_FILES['foto']['size'][$i];

$arquivo_temporario = $_FILES['foto']['tmp_name'][$i];

// Pega extensão do arquivo

// preg_match("/\.(gif|GIF|bmp|BMP|png|PNG|jpg|JPG|jpeg|JPEG){1}$/i", $imagem_nome, $ext);

// Gera um nome único para a imagem

// $imagem_nome = md5(uniqid(time())) . "." . $ext[1];

//Caminho de onde a imagem ficará

$arquivo_nome = $pasta_dir . $imagem_nome;

if (file_exists("$arquivo_nome")) {

$erro=1;

}

// Faz o upload da imagem

if (move_uploaded_file($arquivo_temporario, $arquivo_nome)) {

$retorno.= $diretorio . "/" . $imagem_nome . "|";

}else{

$retorno.='';

}

}

}

return $retorno;

}

?>

Postado

Você não está recebendo nenhum erro dessa função?

Você pode usar o XDebug para debugar se ele está entrando nas funções e os valores das variáveis em tempo de execução.

Caso deseje também pode colocar um echo em cada etapa para ter na página uma resposta do que está sendo feito no código.

No codigo abaixo eu adicionei uns exemplos, se alguma das mensagens não aparecer é porque elas não estão sendo acessadas.


<?php
function spitOut($mensagem, $linha = __LINE__){
echo '<p>Mensagem debug da linha ' . $linha . ': ' . $mensagem . '</p>';
}
function upload_varias_imagens($envarquivo, $diretorio) {

/** Mensagem **/spitOut("Entrou na função de upload");
$retorno = '';
$_recebe = sizeof($envarquivo);
$pasta_dir = $diretorio . "/"; //diretorio dos arquivos
//se não existir a pasta ele cria uma
/** Mensagem **/spitOut("Verificando se a pasta /acharimoveis/painel/" . $pastadir . 'Existe!');
if (!file_exists($pasta_dir)) {
/** Mensagem **/spitOut("A pasta não existe, então vamos fazer uma nova!");
mkdir($pasta_dir);
chmod ("/acharimoveis/painel/$pasta_dir", 0755);
}

/** Mensagem **/spitOut("Vamos varrer as fotos enviadas em $envarquivo");
for ($i = 0; @$i < $_recebe; $i++) {
if ($_FILES['foto']['name'][$i] <> '') {
/** Mensagem **/spitOut("Varrendo a foto na index 0, nome da imagem: " . $_FILES['foto']['name'][$i]);
$imagem_nome = $_FILES['foto']['name'][$i];
$tamanho_arquivo = $_FILES['foto']['size'][$i];
$arquivo_temporario = $_FILES['foto']['tmp_name'][$i];
// Pega extensão do arquivo
// preg_match("/\.(gif|GIF|bmp|BMP|png|PNG|jpg|JPG|jpeg|JPEG){1}$/i", $imagem_nome, $ext);
// Gera um nome único para a imagem
// $imagem_nome = md5(uniqid(time())) . "." . $ext[1];
//Caminho de onde a imagem ficará
$arquivo_nome = $pasta_dir . $imagem_nome;
/** Mensagem **/spitOut("Preparando para gravar a imagem ".$imagem_nome);
if (file_exists("$arquivo_nome")) {
/** Mensagem **/spitOut("Erro já tem uma imagem neste lugar com este nome...");
$erro=1;
}
// Faz o upload da imagem
/** Mensagem **/spitOut("Tentando colocar a imagem na pasta");
if (move_uploaded_file($arquivo_temporario, $arquivo_nome)) {
/** Mensagem **/spitOut("Conseguiu... Parabéns");
$retorno.= $diretorio . "/" . $imagem_nome . "|";
}else{
$retorno.='';
}
}
}
return $retorno;
}
?>
[/CODE]

Postado

seu chmod feito pelo código esta errado, você esta colocando / no inicio, isto significa que esta pasta esta na raiz do seu sistema de arquivos o que sinceramente, acho dificil.

de um echo em $diretorio e veja o que retorna... sobre o chmod, usando-o pelo php, somente funciona em arquivos, então a melhor opção é fazer pelo terminal,

coloque este comando abaixo do $pasta_dir = $diretorio . "/";

e poste o resultado aqui


echo $pasta_dir."<br>\n".dirname(__FILE__);
[/CODE]

Participe do debate

Você pode postar agora e se registrar depois. Se você tem uma conta, entre agora para postar com ela.

Visitante
Responder este tópico…

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Conta

Navegação

Buscar

Buscar

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.