Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Estou com este formulário simples para UPLOAD de imagens, porém estou tendo problemas ao cadastrar as informações que há nos campos adicionais.
Por algum motivo, não esta cadastrando no banco de dados, somente realiza o UPLOAD e cadastra o nome do arquivo novo, código e horário de envio.
<head>
<style type="text/css">
.auto-style1 {
text-align: center;
}
.auto-style2 {
font-family: Verdana, Geneva, Tahoma, sans-serif;
font-size: medium;
text-align: center;
}
.auto-style3 {
font-family: Verdana, Geneva, Tahoma, sans-serif;
font-size: large;
text-align: center;
}
.auto-style4 {
text-align: right;
}
</style>
</head>
<?php
include("conexao.php");
$msg = false;
if(isset($_FILES['arquivo'])){
$extensao = strtolower(substr($_FILES['arquivo']['name'], -4)); //pega a extensao do arquivo
$novo_nome = md5(time()) . $extensao; //define o nome do arquivo
$diretorio = "upload/"; //define o diretorio para onde enviaremos o arquivo
move_uploaded_file($_FILES['arquivo']['tmp_name'], $diretorio.$novo_nome); //efetua o upload
$sql_code = "INSERT INTO photos_upload (codigo, arquivo, data) VALUES(null, '$novo_nome', NOW())";
if($mysqli->query($sql_code))
$msg = "Arquivo en
Outra questão é como fazer para aceitar somente extensões .JPG , .GIF, .PNG ? Tem como fazer isso?
Obrigado desde já!!>
Em 23/01/2019 at 22:33, marcosmarcolin disse:
Tem certeza que copiou todo o código? Tem apenas 1 INSERT, o qual insere os dados que você citou.
kkk agora que reparei... não sei porque mas não foi mesmo tudo ...
mas vou tentar enviar novamente.
>
Em 23/01/2019 at 22:33, marcosmarcolin disse:
Sobre a validação do formato.
Você já tem o formato na variável $extensão, use ela para validar, ex:
if($extensao == ".png" || $extensao == ".jpg"){
// faça isso
}else{
// retorna erro
}
Simples assim.
O código é este abaixo:
<head>
<style type="text/css">
.auto-style1 {
text-align: center;
}
.auto-style2 {
font-family: Verdana, Geneva, Tahoma, sans-serif;
font-size: medium;
text-align: center;
}
.auto-style3 {
font-family: Verdana, Geneva, Tahoma, sans-serif;
font-size: large;
text-align: center;
}
.auto-style4 {
text-align: right;
}
</style>
</head>
<?php
include("conexao.php");
$msg = false;
if(isset($_FILES['arquivo'])){
$extensao = strtolower(substr($_FILES['arquivo']['name'], -4)); //pega a extensao do arquivo
$novo_nome = md5(time()) . $extensao; //define o nome do arquivo
$diretorio = "upload/"; //define o diretorio para onde enviaremos o arquivo
move_uploaded_file($_FILES['arquivo']['tmp_name'], $diretorio.$novo_nome); //efetua o upload
$sql_code = "INSERT INTO photos_upload (codigo, arquivo, data) VALUES(null, '$novo_nome', NOW())";
if($mysqli->query($sql_code))
$msg = "Arquivo enviado com sucesso!";
else
$msg = "Falha ao enviar arquivo.";
}
?>
<h1> </h1>
<?php if(isset($msg) && $msg != false) echo "<p> $msg </p>"; ?>
<form action="upload.php" method="POST" enctype="multipart/form-data">
<div class="auto-style1">
<br>
<table align="center" cellpadding="0" cellspacing="0" style="width: 600">
<tr>
<td class="auto-style3" style="height: 47px"><strong>ENVIO DE
FOTOGRAFIAS</strong></td>
</tr>
<tr>
<td class="auto-style2"> </td>
</tr>
<tr>
<td class="auto-style2">
<table cellpadding="0" cellspacing="0" style="width: 550">
<tr>
<td style="width: 266px; height: 30">NOME</td>
<td class="auto-style4" style="height: 30">
<input name="nome" id="nome" type="text"></td>
</tr>
<tr>
<td style="width: 266px; height: 30">FABRICANTE</td>
<td class="auto-style4" style="height: 30">
<input name="fabricante" id="fabricante" type="text"></td>
</tr>
<tr>
<td style="width: 266px; height: 30">MOTOR</td>
<td class="auto-style4" style="height: 30">
<input name="motor" id="motor" type="text"></td>
</tr>
<tr>
<td style="width: 266px; height: 30">LOCAL</td>
<td class="auto-style4" style="height: 30">
<input name="local" id="local" type="text"></td>
</tr>
<tr>
<td style="width: 266px; height: 30">EMPRESA</td>
<td class="auto-style4" style="height: 30">
<input name="empresa" id="empresa" type="text"></td>
</tr>
<tr>
<td style="width: 266px; height: 30"> </td>
<td style="height: 30"> </td>
</tr>
<tr>
<td colspan="2"> </td>
</tr>
</table>
</td>
</tr>
<tr>
<td class="auto-style2"> </td>
</tr>
<tr>
<td class="auto-style2"> </td>
</tr>
<tr>
<td class="auto-style2"> </td>
</tr>
<tr>
<td class="auto-style2"> <input type="file" required name="arquivo">
<input type="submit" value="Salvar">
</td>
</tr>
</table>
<br><br><br><br></div>
</form>
Agora, como ainda não sei usar muito bem o Mysqli, confesso que não sei como fazer com que os campos que esta visualizando no formulário serem cadastrados junto com o nome do arquivo, data e código.
Obrigado!

Tem certeza que copiou todo o código? Tem apenas 1 INSERT, o qual insere os dados que você citou.
Sobre a validação do formato.
Você já tem o formato na variável $extensão, use ela para validar, ex:
}else{ // retorna erro }Simples assim.