Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS

Moderador: web

 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 216

Upload de 5 imagens

03-05-2012 16:51

Como modificar meu código de upload para postar até 5 imagens juntas?

include('../class/class.uploadjpg.php'); //faz o upload da foto $diretorio = '../images/'.$pasta.'/'; $envia = new Uploadjpg; $envia->Recebe($_FILES['foto']); $envia->Setanome(date('dmYhis').'.jpg'); $foto = $envia->Gera(700,100,$diretorio); <input name="foto1" type="file" size="32" /> <input name="foto2" type="file" size="32" /> <input name="foto3" type="file" size="32" /> <input name="foto4" type="file" size="32" /> <input name="foto5" type="file" size="32" />

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17235
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Upload de 5 imagens

03-05-2012 16:58

Tem que colocar o input como array

<input name="foto[]" type="file" size="32" />

Dá um foreach para pegar todos os inputs que foram preenchidos.

Dentro desse loop, você pega o nome do arquivo, ai você joga todas essas linhas dessa class dentro do loop, assim, cada vez que der o loop usa a class para criar o arquivo.
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 216

Upload de 5 imagens

04-05-2012 17:02

Blz,
Fiz assim:
<?php $diretorio = 'images/produtos/'; $envia = new Uploadjpg; foreach($_FILES['foto'] as $foto){ $envia->Recebe($foto); $envia->Setanome(date('dmYhis').'.jpg'); $foto = $envia->Gera(500,70,$diretorio); } ?> <input name="foto[]" type="file" size="32" /> <input name="foto[]" type="file" size="32" /> <input name="foto[]" type="file" size="32" /> <input name="foto[]" type="file" size="32" /> <input name="foto[]" type="file" size="32" />


Mas e agora para pegar as informações e jogar ao BD?
Seria assim?
GetSQLValueString($foto[0], "text"), GetSQLValueString($foto[1], "text"), GetSQLValueString(foto[2], "text"), GetSQLValueString($foto[3], "text"), GetSQLValueString(foto[4], "text"),

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17235
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Upload de 5 imagens

04-05-2012 17:09

Tem que ver qual a linha você deve usar na sua class para o insert. Também tem que ver se cada imagem é alocada em uma linha da tabela.
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 216

Upload de 5 imagens

04-05-2012 17:41

Não respondeu nada.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17235
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Upload de 5 imagens

04-05-2012 17:51

Você usa class. O que indiquei é que procure na sua class se há alguma linha para inserir no bd.

Se for fazer pelo modo tradicional, tem que fazer assim:

mysql_query("INSERT INTO suatabela (foto) VALUES('$foto')");

Alterando os valores em negrito para seus dados.
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 216

Upload de 5 imagens

04-05-2012 17:54


$diretorio = 'images/produtos/'; $envia = new Uploadjpg; foreach($_FILES['foto'] as $foto){ $envia->Recebe($foto); $envia->Setanome(date('dmYhis').'.jpg'); $foto = $envia->Gera(500,70,$diretorio); } $insertSQL = sprintf("INSERT INTO produtos (id_cliente, titulo, url, un_venda, peso, qtd1_a, qtd1_b, valor_1, temp_1, transportadora, garantia, foto1, foto2, foto3, foto4, foto5, descricao, `data`, status) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)", GetSQLValueString($_POST['id_cliente'], "int"), GetSQLValueString($_POST['titulo'], "text"), GetSQLValueString($url, "text"), GetSQLValueString($_POST['un_venda'], "text"), GetSQLValueString($_POST['peso'], "text"), GetSQLValueString($_POST['qtd1_a'], "int"), GetSQLValueString($_POST['qtd1_b'], "int"), GetSQLValueString(FormataMoeda1($_POST['valor_1']), "text"), GetSQLValueString($_POST['temp_1'], "text"), GetSQLValueString($_POST['transportadora'], "text"), GetSQLValueString($_POST['garantia'], "text"), GetSQLValueString($foto, "text"), GetSQLValueString($foto, "text"), GetSQLValueString($foto, "text"), GetSQLValueString($foto, "text"), GetSQLValueString($foto, "text"), GetSQLValueString($_POST['descricao'], "text"), GetSQLValueString($_POST['data'], "date"), GetSQLValueString($_POST['status'], "text")); mysql_select_db($database_conexao, $conexao); $Result1 = mysql_query($insertSQL, $conexao) or die(mysql_error()); $insertGoTo = "c.venderok.php"; if (isset($_SERVER['QUERY_STRING'])) { $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?"; $insertGoTo .= $_SERVER['QUERY_STRING']; } header(sprintf("Location: %s", $insertGoTo)); }

0
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 216

Upload de 5 imagens

05-05-2012 09:25

Alguem?
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17235
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Upload de 5 imagens

05-05-2012 10:06

Alguém o que?
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 216

Upload de 5 imagens

05-05-2012 12:44

Que poderia ajudar.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17235
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Upload de 5 imagens

05-05-2012 14:47

No seu caso que o insert é fora, você vai ter que criar um array antes do while, tipo:

$pega = Array();

Dentro do while você armazena o nome de cada em um índice do array

$pega[] = $foto;

Tem que observar para usar $pega dentro do foreach, que é onde tem o nome da foto.

Ai adiciona os índices

GetSQLValueString($pega[0], "text"),
GetSQLValueString($pega[1], "text"),
....
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 216

Upload de 5 imagens

11-05-2012 11:58

Dei um enxugada nos campo e deixei somente as imagens.
include ("class/class.uploadjpg.php"); if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) { $diretorio = "images/produtos/"; $envia = new Uploadjpg; $envia->Recebe($foto); $envia->Setanome(date('dmYhis').'.jpg'); $foto = $envia->Gera(500,70,$diretorio); foreach($_FILES['foto']['name'] as $key => $foto){ $campo[ $key ] = $foto; } $insertSQL = sprintf("INSERT INTO produtos (id_cliente, foto1, foto2, foto3, foto4, foto5, status) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)", GetSQLValueString($_POST['id_cliente'], "int"), . . . GetSQLValueString($campo[0], "text"), GetSQLValueString($campo[1], "text"), GetSQLValueString($campo[2], "text"), GetSQLValueString($campo[3], "text"), GetSQLValueString($campo[4], "text"), GetSQLValueString($_POST['status'], "text")); mysql_select_db($database_conexao, $conexao); $Result1 = mysql_query($insertSQL, $conexao) or die(mysql_error()); $insertGoTo = "c.venderok.php"; if (isset($_SERVER['QUERY_STRING'])) { $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?"; $insertGoTo .= $_SERVER['QUERY_STRING']; } header(sprintf("Location: %s", $insertGoTo)); } <form action="<?php echo $editFormAction; ?>" method="post" enctype="multipart/form-data" name="form1" id="form1" onSubmit="return Valida()"> <input type="file" name="foto[]" size="32" onchange="preview(this);" /> <input type="file" name="foto[]" size="32" onchange="preview2(this);" /> <input type="file" name="foto[]" size="32" onchange="preview3(this);" /> <input type="file" name="foto[]" size="32" onchange="preview4(this);" /> <input type="file" name="foto[]" size="32" onchange="preview5(this);" /> <input name="button" type="submit" id="button" value="Cadastrar e avançar >" />


* Não esta renomeando o arquivo, o nome que vai para o BD é o mesmo nome do arquivo.
* Não esta fazendo o upload do arquivo;
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17235
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Upload de 5 imagens

11-05-2012 12:57

O upload você tem que ver dentro de sua class, porque é lá que está a linha de upload. Dá uma olhada nesse script abaixo para ter uma idéia do upload com uso de array para as fotos.

Upload-total_33_873.html
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 216

Upload de 5 imagens

11-05-2012 13:42

Essa é minha class, eu uso para tudo, e funciona, mas para esse foreach é a primeira vez que uso.

<?php //classe para upload de imagem class Uploadjpg{ var $erro; var $imgy; var $tamanho; var $nometmp; var $nome; var $tipo; var $quali; var $novonome; var $diretorio; function Uploadjpg(){ } //recebe function Recebe($imagem){ $this->tamanho = $imagem['size']; $this->nometmp = $imagem['tmp_name']; $this->tipo = $imagem['type']; $this->nome = $imagem['name']; } //gera imagem function Gera($imgy,$quali,$diretorio){ $this->imgy = $imgy; $this->quali = $quali; $this->diretorio = $diretorio; if (($this->tipo != 'image/jpeg') && ($this->tipo != 'image/pjpeg')){ $this->erro = 'Tipo de arquivo inválido, somente JPG.'; return false; }elseif($this->tamanho == 0){ $this->erro = 'Selecione uma imagem.'; return false; }elseif(!$imagem_orig = @imagecreatefromjpeg($this->nometmp)){ $this->erro = 'Somente imagens: JPG e PNG'; return false; }elseif(!file_exists($this->diretorio)){ $this->erro = 'O diretorio '.$this->diretorio.' nao existe.'; return false; }else{ //gera a imagem $imagem = $this->diretorio.$this->novonome; $tamanhoX = @imagesx($imagem_orig); $tamanhoY = @imagesy($imagem_orig); $largura = $this->imgy; $altura = $tamanhoY * $largura / $tamanhoX; //A linha abaixo é para largura proporcional da altura //$largura = $tamanhoX * $altura / $tamanhoY; $imagem_fin = imagecreatetruecolor($largura, $altura); imagecopyresampled($imagem_fin,$imagem_orig, 0, 0, 0, 0, $largura + 1, $altura + 1, $tamanhoX, $tamanhoY); imageJPEG($imagem_fin,$imagem,$this->quali); @imagedestroy($imagem_orig); @imagedestroy($imagem_fin); //se deu certo retorna o nome da imagem return $this->novonome; } } //retorna erro function Erro(){ return $this->erro; } //seta nome function Setanome($nome){ $this->novonome = $nome; } //cria diretorio function Criadir($novodir,$chmod){ if(file_exists($novodir)){ return false; }elseif(!@mkdir($novodir,$chmod)){ return false; }else{ return true; } } } ?>

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17235
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Upload de 5 imagens

11-05-2012 13:45

No seu caso, você vai ter que jogar toda sua class no foreach, para pegar os dados de cada foto. E usar a foto como array

$_FILES ['foto']['tmp_name'][$i]

Esse $i tem que ser o índice, ai você pode usar um for ao invés do foreach ou usar o índice do foreach.
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 216

Upload de 5 imagens

11-05-2012 14:14

Eu não sei fazer isso na prática, poderia me mostrar pronto?
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17235
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Upload de 5 imagens

11-05-2012 14:23

Não posso fazer. Você tem que ver o upload total que indiquei para adaptar.
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 216

Upload de 5 imagens

11-05-2012 14:58

Vamos por parte, você poderia informar o porque ele não esta renomeando o arquivo?
<?php include("c.produtoAdicionarClass.upload.php"); if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) { //$diretorio = 'images/produtos/'; $envia = new Uploadjpg; foreach($_FILES['foto']['name'] as $key => $foto){ $campo[ $key ] = $foto; $envia->Recebe($foto); $envia->Setanome(date('dmYhis').'.jpg'); $foto = $envia->Gera(500,70,$diretorio); } echo $campo[0]."<br>"; echo $campo[1]."<br>"; echo $campo[2]."<br>"; echo $campo[3]."<br>"; echo $campo[4]."<br>"; } ?> ===================================================<br> <form action="teste.php" method="post" enctype="multipart/form-data" name="form1"> <p> <input name="foto[]" type="file" size="32" /><br> <input name="foto[]" type="file" size="32" /><br> <input name="foto[]" type="file" size="32" /><br> <input name="foto[]" type="file" size="32" /><br> <input name="foto[]" type="file" size="32" /> </p> <p> <input type="submit" name="button" id="button" value="Submit"> <input type="hidden" name="MM_insert" value="form1" /> <br> </p> </form>

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17235
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Upload de 5 imagens

11-05-2012 15:25

Aparentemente o nome é dado aqui

$envia->Setanome(date('dmYhis').'.jpg');

Num foreach isso é quase instantâneo, por isso deve estar gerando os nomes tudo igual.
Você tem que usar um valor externo, tipo $i = 0;

Ai dentro do foreach você incrementa esse valor e adicionar o $i ao nome do arquivo.
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 216

Upload de 5 imagens

11-05-2012 15:30

Você não pode mostrar um exemplo com o meu código? Eu não sei como fazer!
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17235
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Upload de 5 imagens

11-05-2012 16:15

Veja como funciona nesse exemplo

<?php
$i = 0;

$array = Array(1, 2, 3);

foreach($array AS $arr) {
echo "$i<br />";
$i++;
}
?>

É só usar o mesmo modelo, só que você vai adicionar o $i ao nome do arquivo, para que cada laço tenha um nome diferente

1.....jpg
2.....jpg
etc...
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 216

Upload de 5 imagens

11-05-2012 16:23

Por favor, ja estou aflito por não conseguir fazer, estou com meu projeto parado porque não sei fazer isso que é simples para você.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17235
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Upload de 5 imagens

11-05-2012 16:29

Se não consegue fazer me contata via msn que te faço um orçamento.
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 216

Upload de 5 imagens

11-05-2012 16:35

Parceiro, estou mais duro que pau de arara!...rsrs, mes que vem estou me casando, comprando coisas para casa, não sei se tem ideia de como é isso, mas informo é que um gasta gigante.

Te fiz um proposta a uns dias de ser meu sócio, você só iria me ajudar com alguns códigos assim. Não posso falar o que é, mas é projeto grande e ja estou mais que a metade pronto.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17235
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Upload de 5 imagens

11-05-2012 16:43

na mesma :@

Não posso fazer. Posso te dar umas dicas para que você adapte ao seu código.
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado