Boa noite, não tenho muito conhecimento em PHP, e estou com algumas dúvidas. Estou tentando fazer um formulário que cadastra várias informações e algumas imagens no banco de dados. Os campos da tabela são (valor_terreno, telefone, localizacao, contato_pessoa, cidade,imagem1, imagem2, imagem3, imagem4, imagem5, imagem6, observacao), no caso preciso que o codigo salve 6 imagens nas respectivas colunas. Já fiz com apenas 1 imagem e salva normalmente na pasta do servidor e no banco, mas com várias nunca tinha feito tentei realizando o código abaixo, salva as informações e nos campos das imagens salva 1 mesma imagem em todos os campos assim como na pasta do servidor fica somente uma. Alguém pode me ajudar? Segue codigos:
index.html
<form class="" action="recebe_terreno_1.php" method="POST" enctype="multipart/form-data">
<div class="row" >
<div class="col-md-6">
<div class="form-group">
<input type="text" class="form-control" placeholder="Digite o Valor do Terreno *" name="valor_terreno" id="valor_terreno" required data-validation-required-message="Você não digitou o valor!">
<p class="help-block text-danger"></p>
</div>
<div class="form-group">
<input type="tel" class="form-control" placeholder="Digite o Telefone *" name="telefone" id="telefone" required data-validation-required-message="Você não digitou o telefone.">
<p class="help-block text-danger"></p>
</div>
<div class="form-group">
<input type="text" class="form-control" placeholder="Digite a Localização *" name="localizacao" id="localizacao" required data-validation-required-message="Você não digitou a localização do Terreno.">
<p class="help-block text-danger"></p>
</div>
<div class="form-group">
<input type="text" class="form-control" placeholder="Digite o Contato *" name="contato_pessoa" id="contato_pessoa" required data-validation-required-message="Você não digitou o contato.">
<p class="help-block text-danger"></p>
</div>
<div class="form-group">
<textarea class="form-control" placeholder="Observação" name="observacao" id="observacao"></textarea>
<p class="help-block text-danger"></p>
</div>
include("./config.php");
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
//CRIAR UMA LISTA COM TODOS OS MIME-TYPES PERMITIDOS
//Lista de tipos de arquivos permitidos
$tipoPermitidos = array('image/gif', 'image/jpeg', 'image/jpg', 'image/png');
//TAMANHO MÁXIMO (EM BYTES)
$tamanhoPermitido = 1024 * 3000; //700KB
//VERIFICA SE O ARQUIVO FOI MOVIDO COM SUCESSO
if (($upload1 == true) && ($upload2 == true) &&
($upload3 == true) && ($upload4 == true) &&
($upload5 == true) && ($upload6 == true)) {
//CRIA UMA QUERY MYSQL
$sql = "insert into pre_cadastro (valor_terreno, telefone, localizacao, contato_pessoa, cidade,
imagem1, imagem2, imagem3, imagem4, imagem5, imagem6, observacao)
values('$valor_terreno', '$telefone', '$localizacao', '$contato_pessoa', '$cidade', "
. "'$nomea1', '$nomea2', '$nomea3', '$nomea4', '$nomea5','$nomea6', '$observacao')";
$query = mysql_query($sql);
if ($query == true) {
echo "PRÉ CADASTRO DE TERRENO REALIZADO COM SUCESSO!";
header("Location: index.php");
}
}
}
} else {
echo"Ocorreu um erro com o upload, por favor tente novamente";
}
Pergunta
erikabarrado
Boa noite, não tenho muito conhecimento em PHP, e estou com algumas dúvidas. Estou tentando fazer um formulário que cadastra várias informações e algumas imagens no banco de dados. Os campos da tabela são (valor_terreno, telefone, localizacao, contato_pessoa, cidade,imagem1, imagem2, imagem3, imagem4, imagem5, imagem6, observacao), no caso preciso que o codigo salve 6 imagens nas respectivas colunas. Já fiz com apenas 1 imagem e salva normalmente na pasta do servidor e no banco, mas com várias nunca tinha feito tentei realizando o código abaixo, salva as informações e nos campos das imagens salva 1 mesma imagem em todos os campos assim como na pasta do servidor fica somente uma. Alguém pode me ajudar? Segue codigos:
index.html
<form class="" action="recebe_terreno_1.php" method="POST" enctype="multipart/form-data">
<div class="row" >
<div class="col-md-6">
<div class="form-group">
<input type="text" class="form-control" placeholder="Digite o Valor do Terreno *" name="valor_terreno" id="valor_terreno" required data-validation-required-message="Você não digitou o valor!">
<p class="help-block text-danger"></p>
</div>
<div class="form-group">
<input type="tel" class="form-control" placeholder="Digite o Telefone *" name="telefone" id="telefone" required data-validation-required-message="Você não digitou o telefone.">
<p class="help-block text-danger"></p>
</div>
<div class="form-group">
<input type="text" class="form-control" placeholder="Digite a Localização *" name="localizacao" id="localizacao" required data-validation-required-message="Você não digitou a localização do Terreno.">
<p class="help-block text-danger"></p>
</div>
<div class="form-group">
<input type="text" class="form-control" placeholder="Digite o Contato *" name="contato_pessoa" id="contato_pessoa" required data-validation-required-message="Você não digitou o contato.">
<p class="help-block text-danger"></p>
</div>
<div class="form-group">
<textarea class="form-control" placeholder="Observação" name="observacao" id="observacao"></textarea>
<p class="help-block text-danger"></p>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<select class="form-control" name="cidade" id="cidade" >
<option value="Bauru" selected>Bauru</option>
<option value="Agudos" >Agudos</option>
<option value="Lencoes" >Lenções Paulista</option>
</select>
</div>
<div class="form-group">
<input type="file" class="form-control" name="arquivo[]">
<input type="file" class="form-control" name="arquivo[]">
<input type="file" class="form-control" name="arquivo[]">
<input type="file" class="form-control" name="arquivo[]">
<input type="file" class="form-control" name="arquivo[]">
<input type="file" class="form-control" name="arquivo[]">
</div>
</div>
<div class="row form-group">
<div class="col-sm-offset-5 col-sm-7">
<button type="submit" class="btn btn-success" value="Salvar">
<span class="glyphicon glyphicon-floppy-disk"></span> Salvar
</button>
<button type="submit" class="btn btn-danger" value="Limpar">
<span class="glyphicon glyphicon-refresh"></span> Limpar
</button>
</div>
</div>
</form>
recebe_terreno_1.php
<?php
include("./config.php");
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
//CRIAR UMA LISTA COM TODOS OS MIME-TYPES PERMITIDOS
//Lista de tipos de arquivos permitidos
$tipoPermitidos = array('image/gif', 'image/jpeg', 'image/jpg', 'image/png');
//TAMANHO MÁXIMO (EM BYTES)
$tamanhoPermitido = 1024 * 3000; //700KB
/* @var $descricao type */
$valor_terreno = $_POST['valor_terreno'];
$telefone = $_POST['telefone'];
$localizacao = $_POST['localizacao'];
$contato_pessoa = $_POST['contato_pessoa'];
$cidade = $_POST['cidade'];
$observacao = $_POST['observacao'];
//O NOME ORIGINAL DO ARQUIVO NO COMPUTADOR DO USUÁRIO
$arqName1 = $_FILES['arquivo']['name'][0];
$arqName2 = $_FILES['arquivo']['name'][1];
$arqName3 = $_FILES['arquivo']['name'][2];
$arqName4 = $_FILES['arquivo']['name'][3];
$arqName5 = $_FILES['arquivo']['name'][4];
$arqName6 = $_FILES['arquivo']['name'][5];
//O TIPO MIME DO ARQUIVO. UM EXEMPLO PODE SER "foto/gif
$arqType1 = $_FILES['arquivo']['type'][0];
$arqType2 = $_FILES['arquivo']['type'][1];
$arqType3 = $_FILES['arquivo']['type'][2];
$arqType4 = $_FILES['arquivo']['type'][3];
$arqType5 = $_FILES['arquivo']['type'][4];
$arqType6 = $_FILES['arquivo']['type'][5];
//TAMANHO, EM BYTES, DO ARQUIVO
$arqSize1 = $_FILES['arquivo']['size'][0];
$arqSize2 = $_FILES['arquivo']['size'][1];
$arqSize3 = $_FILES['arquivo']['size'][2];
$arqSize4 = $_FILES['arquivo']['size'][3];
$arqSize5 = $_FILES['arquivo']['size'][4];
$arqSize6 = $_FILES['arquivo']['size'][5];
//NOME TEMPORARIO DO ARQUIVO, COMO FOI GUARDADO NO SERVIDOR
$arqTemp1 = $_FILES['arquivo']['tmp_name'][0];
$arqTemp2 = $_FILES['arquivo']['tmp_name'][1];
$arqTemp3 = $_FILES['arquivo']['tmp_name'][2];
$arqTemp4 = $_FILES['arquivo']['tmp_name'][3];
$arqTemp5 = $_FILES['arquivo']['tmp_name'][4];
$arqTemp6 = $_FILES['arquivo']['tmp_name'][5];
//O CÓDIGO DE ERRO ASSOCIADO A ESTE UPLOAD DE ARQUIVO
$arqError1 = $_FILES['arquivo']['error'][0];
$arqError2 = $_FILES['arquivo']['error'][1];
$arqError3 = $_FILES['arquivo']['error'][2];
$arqError4 = $_FILES['arquivo']['error'][3];
$arqError5 = $_FILES['arquivo']['error'][4];
$arqError6 = $_FILES['arquivo']['error'][5];
/*
* MOVENDO O ARQUIVO PARA A PASTA CERTA
*/
if (($arqError1 == 0)&&($arqError2 == 0) && ($arqError3 == 0) && ($arqError4 == 0) && ($arqError5 == 0) && ($arqError6 == 0)) {
//VERIFICA O TIPO DE ARQUIVO ENVIADO
if (array_search($arqType1, $tipoPermitidos) === false && array_search($arqType2, $tipoPermitidos) === false &&
array_search($arqType3, $tipoPermitidos) === false && array_search($arqType4, $tipoPermitidos) === false &&
array_search($arqType5, $tipoPermitidos) === false && array_search($arqType6, $tipoPermitidos) === false) {
echo 'O tipo de arquivo enviado é inválido!';
//VERIFICA O TAMANHO DO ARQUIVO ENVIADO
} elseif (($arqSize1 > $tamanhoPermitido) && ($arqSize2 > $tamanhoPermitido) &&
($arqSize3 > $tamanhoPermitido) && ($arqSize4 > $tamanhoPermitido) &&
($arqSize5 > $tamanhoPermitido) && ($arqSize6 > $tamanhoPermitido)) {
echo 'O tamnho do arquivo enviado é maior que o limite';
//NÃO HOUVE ERRO, MOVE O ARQUIVO
} else {
$pasta = 'imagem_terreno/';
//PEGA A EXTESÃO DO ARQUIVO ENVIADO
$tipo1 = strtolower(end(explode('.', $arqName1)));
$tipo2 = strtolower(end(explode('.', $arqName2)));
$tipo3 = strtolower(end(explode('.', $arqName3)));
$tipo4 = strtolower(end(explode('.', $arqName4)));
$tipo5 = strtolower(end(explode('.', $arqName5)));
$tipo6 = strtolower(end(explode('.', $arqName6)));
//DEFINE O NOME DO ARQUIVO USANDO UM UNIX TIMESTAMP
$nomea1 = time() . '.' . $tipo1;
$nomea2 = time() . '.' . $tipo2;
$nomea3 = time() . '.' . $tipo3;
$nomea4 = time() . '.' . $tipo4;
$nomea5 = time() . '.' . $tipo5;
$nomea6 = time() . '.' . $tipo6;
//ESCAPA OS CARACTERES DO ARQUIVO USANDO UM UNIX TIMESTAMP
$nomeMySQL = mysql_real_escape_string($_POST['valor_terreno']);
$nomeMySQL1 = mysql_real_escape_string($_POST['telefone']);
$nomeMySQL2 = mysql_real_escape_string($_POST['localizacao']);
$nomeMySQL3 = mysql_real_escape_string($_POST['contato_pessoa']);
$nomeMySQL4 = mysql_real_escape_string($_POST['cidade']);
$nomeMySQL5 = mysql_real_escape_string($_POST['observacao']);
$upload1 = move_uploaded_file($arqTemp1, $pasta . $nomea1);
$upload2 = move_uploaded_file($arqTemp2, $pasta . $nomea2);
$upload3 = move_uploaded_file($arqTemp3, $pasta . $nomea3);
$upload4 = move_uploaded_file($arqTemp4, $pasta . $nomea4);
$upload5 = move_uploaded_file($arqTemp5, $pasta . $nomea5);
$upload6 = move_uploaded_file($arqTemp6, $pasta . $nomea6);
//VERIFICA SE O ARQUIVO FOI MOVIDO COM SUCESSO
if (($upload1 == true) && ($upload2 == true) &&
($upload3 == true) && ($upload4 == true) &&
($upload5 == true) && ($upload6 == true)) {
//CRIA UMA QUERY MYSQL
$sql = "insert into pre_cadastro (valor_terreno, telefone, localizacao, contato_pessoa, cidade,
imagem1, imagem2, imagem3, imagem4, imagem5, imagem6, observacao)
values('$valor_terreno', '$telefone', '$localizacao', '$contato_pessoa', '$cidade', "
. "'$nomea1', '$nomea2', '$nomea3', '$nomea4', '$nomea5','$nomea6', '$observacao')";
$query = mysql_query($sql);
if ($query == true) {
echo "PRÉ CADASTRO DE TERRENO REALIZADO COM SUCESSO!";
header("Location: index.php");
}
}
}
} else {
echo"Ocorreu um erro com o upload, por favor tente novamente";
}
Link para o comentário
Compartilhar em outros sites
0 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.