0
Hello my projector has a form where can be sent an image, it saves the form data in the BD but does not insert the image in the files. someone can tell where my mistake is?
<?php session_start();
include_once("../conexao.php");
$nome = $_POST["nome"];
$desc_vid = $_POST["desc_vid"];
$tempo = $_POST["tempo"];
$star_1 = $_POST["star_1"];
$star_2 = $_POST["star_2"];
$imagem = $_FILES['imagem']['name'];
$tags = $_POST["tags"];
$description = $_POST["description"];
$categoria_id = $_POST["categoria_id"];
$categoria_id2 = $_POST["categoria_id2"];
$categoria_id3 = $_POST["categoria_id3"];
$categoria_id4 = $_POST["categoria_id4"];
$categoria_id5 = $_POST["categoria_id5"];
// Local onde imagem vai ser salva
$_UP['pasta'] = '../../videos/thumb/';
// Tamanho da imagem
$_UP['tamanho'] = 1024*1024*100; //5Mb
// Exrensões permitidas
$_UP['extensoes'] = array('png', 'jpg', 'jpeg', 'gif');
// Renomear a imagem
$_UP['renomear'] = false;
// Tipos de erro de UpLoad do PHP
$_UP['erros'][0] = 'Não houve erro';
$_UP['erros'][1] = 'Imagem maior que o limite do php';
$_UP['erros'][2] = 'Imagem muito grande';
$_UP['erros'][3] = 'UpLoad da imagem feita parcialmente';
$_UP['erros'][4] = 'Erro no UpLoad da imagem';
// Verifica se houve algum erro
if($_FILES['imagem']['erros'] != 0){
die("Não foi possivel fazer UpLoad, Erro: <br />". $_UP['erros'][$_FILES['imagem']['erros']]);
exit;
}
// Verifica qual a extensão
$img_nome = $_FILES['imagem']['name'];
$img_separador = explode('.', $img_nome);
$extensao = strtolower(end($img_separador));
//$extensao = strtolower(end(explode('.', $_FILES['imagem']['name'])));
if(array_search($extensao, $_UP['extensoes'])=== false){
echo "
<script type=\"text/javascript\">
alert(\"Arquivo não compatível: png, jpg, jpeg e gif. \");
</script>
";
}
// Verifica o tamanho
else if ($_UP['tamanho'] < $_FILES['imagem']['size']){
echo "Imagem muito grande, limite de 5Mb";
}
// Salva nos arquivos do site
else{
//Verifica se deve trocar o nome da imagem
if($_UP['renomear'] == true){
// Cria nome Baseado no UNIX TIMESTAMP atual e com extensão
$nome_final = time().'.jpg';
}else{
// Mantem o nome da imagem
$nome_final = $_FILES['imagem']['name'];
}
// Verifica se é possivel mover a imagem para a pasta escolhida
if(move_uploaded_file($_FILES['imagem']['tmp_name'], $_UP['pasta'].$nome_final)){
// Upload efetuado com sucesso
$nome = $conectar->real_escape_string($nome);
$desc_vid = $conectar->real_escape_string($desc_vid);
$tempo = $conectar->real_escape_string($tempo);
$star_1 = $conectar->real_escape_string($star_1);
$star_2 = $conectar->real_escape_string($star_2);
$nome_final = $conectar->real_escape_string($nome_final);
$tags = $conectar->real_escape_string($tags);
$description = $conectar->real_escape_string($description);
$categoria_id = $conectar->real_escape_string($categoria_id);
$categoria_id2 = $conectar->real_escape_string($categoria_id2);
$categoria_id3 = $conectar->real_escape_string($categoria_id3);
$categoria_id4 = $conectar->real_escape_string($categoria_id4);
$categoria_id5 = $conectar->real_escape_string($categoria_id5);
$query = mysqli_query($conectar, "INSERT INTO videos (nome, desc_vid, tempo, star_1, star_2, imagem, tags, description, categoria_id, categoria_id2, categoria_id3, categoria_id4, categoria_id5, created) VALUES ('".$nome."', '".$desc_vid."', '".$tempo."', '".$star_1."', '".$star_2."', '".$nome_final."', '".$tags."', '".$description."', '".$categoria_id."', '".$categoria_id2."', '".$categoria_id3."', '".$categoria_id4."', '".$categoria_id5."', NOW())") or die(mysqli_error($conectar));
echo "<META HTTP-EQUIV=REFRESH CONTENT = '0;URL= http://houseofcoin.com/xxx/administrativo.php?link=9'>
<script type=\"text/javascript\">
alert(\"Cadastrado com Sucesso.\");
</script>
";
}else{
// Falha no UpLoad
$nome = $conectar->real_escape_string($nome);
$desc_vid = $conectar->real_escape_string($desc_vid);
$tempo = $conectar->real_escape_string($tempo);
$star_1 = $conectar->real_escape_string($star_1);
$star_2 = $conectar->real_escape_string($star_2);
$tags = $conectar->real_escape_string($tags);
$description = $conectar->real_escape_string($description);
$categoria_id = $conectar->real_escape_string($categoria_id);
$categoria_id2 = $conectar->real_escape_string($categoria_id2);
$categoria_id3 = $conectar->real_escape_string($categoria_id3);
$categoria_id4 = $conectar->real_escape_string($categoria_id4);
$categoria_id5 = $conectar->real_escape_string($categoria_id5);
$query = mysqli_query($conectar, "INSERT INTO videos (nome, desc_vid, tempo, star_1, star_2, tags, description, categoria_id, categoria_id2, categoria_id3, categoria_id4, categoria_id5, created) VALUES ('".$nome."', '".$desc_vid."', '".$tempo."', '".$star_1."', '".$star_2."', '".$tags."', '".$description."', '".$categoria_id."', '".$categoria_id2."', '".$categoria_id3."', '".$categoria_id4."', '".$categoria_id5."', NOW())") or die(mysqli_error($conectar));
echo "<META HTTP-EQUIV=REFRESH CONTENT = '0;URL= http://houseofcoin.com/xxx/administrativo.php?link=9'>
<script type=\"text/javascript\">
alert(\"Cadastrado não Realizado.\");
</script>
";
}
}
/*$query = mysqli_query($conectar, "INSERT INTO videos (nome, desc_vid, tempo, star_1, star_2, imagem, categoria_id, tags, description, created) VALUES ('".$nome."', '".$desc_vid."', '".$tempo."', '".$star_1."', '".$star_2."', '".$nome_final."', '".$categoria_id."', '".$tags."', '".$description."', NOW())");
?>
<!DOCTYPE html>
<html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"></head><body>
<?php
if (mysqli_affected_rows($conectar) != 0){
echo "<META HTTP-EQUIV=REFRESH CONTENT = '0;URL= http://houseofcoin.com/xxx/administrativo.php?link=9'>
<script type=\"text/javascript\">
alert(\"Cadastrado com Sucesso.\");
</script>
";
}else {
echo "<META HTTP-EQUIV=REFRESH CONTENT = '0;URL= http://houseofcoin.com/xxx/administrativo.php?link=9'>
<script type=\"text/javascript\">
alert(\"Cadastrado não Realizado.\");
</script>
";
}*/
?>
Form code
<div class="container" style="width: 100%">
<div class="page-header"><h1>Cadastrar</h1></div>
<div class="row">
<div class="col-md-10">
<form class="form-horizontal" method="post" action="processa/proc_cad_vid.php" enctype="multipart/form-data">
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">Título</label>
<div class="col-sm-10">
<input type="texto" class="form-control" name="nome" placeholder="Título do Vídeo">
</div>
</div>
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">Descrição</label>
<div class="col-sm-10">
<textarea class="form-control" rows="3" name="desc_vid" placeholder="Descrição do Vídeo"></textarea>
</div>
</div>
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">Tempo</label>
<div class="col-sm-10">
<input type="texto" class="form-control" name="tempo" placeholder="Tempo de Vídeo">
</div>
</div>
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">Star 1</label>
<div class="col-sm-10">
<input type="texto" class="form-control" name="star_1" placeholder="Star 1">
</div>
</div>
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">Star 2</label>
<div class="col-sm-10">
<input type="texto" class="form-control" name="star_2" placeholder="Star 2">
</div>
</div>
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">Imagem </label>
<div class="col-sm-10">
<input type="file" name="imagem" id="exampleInputFile">
</div>
</div>
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">Tags</label>
<div class="col-sm-10">
<input type="texto" class="form-control" name="tags" placeholder="Tags">
</div>
</div>
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">Description</label>
<div class="col-sm-10">
<textarea class="form-control" rows="3" name="description" placeholder="Descrição que o Google Recebe"></textarea>
</div>
</div>
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">Categoria 1</label>
<div class="col-sm-10">
<select class="form-control" name="categoria_id">
<option>Selecione</option>
<?php
$resultado = mysqli_query($conectar, "SELECT * FROM categorias");
while ($dados = mysqli_fetch_assoc($resultado)){
$dados = str_replace(" ","",$dados);
?>
<option value="<?php echo $dados['nome'];?>"><?php echo $dados['nome'];?></option>
<?php } ?>
</select>
</div>
</div>
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">Categoria 2</label>
<div class="col-sm-10">
<select class="form-control" name="categoria_id2">
<option>Selecione</option>
<?php
$resultado = mysqli_query($conectar, "SELECT * FROM categorias");
while ($dados = mysqli_fetch_assoc($resultado)){
$dados = str_replace(" ","",$dados);
?>
<option value="<?php echo $dados['nome'];?>"><?php echo $dados['nome'];?></option>
<?php } ?>
</select>
</div>
</div>
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">Categoria 3</label>
<div class="col-sm-10">
<select class="form-control" name="categoria_id3">
<option>Selecione</option>
<?php
$resultado = mysqli_query($conectar, "SELECT * FROM categorias");
while ($dados = mysqli_fetch_assoc($resultado)){
$dados = str_replace(" ","",$dados);
?>
<option value="<?php echo $dados['nome'];?>"><?php echo $dados['nome'];?></option>
<?php } ?>
</select>
</div>
</div>
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">Categoria 4</label>
<div class="col-sm-10">
<select class="form-control" name="categoria_id4">
<option>Selecione</option>
<?php
$resultado = mysqli_query($conectar, "SELECT * FROM categorias");
while ($dados = mysqli_fetch_assoc($resultado)){
$dados = str_replace(" ","",$dados);
?>
<option value="<?php echo $dados['nome'];?>"><?php echo $dados['nome'];?></option>
<?php } ?>
</select>
</div>
</div>
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">Categoria 5</label>
<div class="col-sm-10">
<select class="form-control" name="categoria_id5">
<option>Selecione</option>
<?php
$resultado = mysqli_query($conectar, "SELECT * FROM categorias");
while ($dados = mysqli_fetch_assoc($resultado)){
$dados = str_replace(" ","",$dados);
?>
<option value="<?php echo $dados['nome'];?>"><?php echo $dados['nome'];?></option>
<?php } ?>
</select>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-success">Cadastrar</button>
</div>
</div>
</form>
</div><br>
</div></div>
I have tried to put the $querry layer and force the error, but it does not insert any data. Thanks in advance.
Where does this variable come from
$_UP
? I am sure she is not a superglobal. Post also the form HTML.– Guilherme Nascimento
pardon I thought it would not be important, editing now...
– Éo Ronaldo Dll
I’m not sure what happens, but you can try to debug the mysql answer like this
$query = mysqli_query($conectar, "INSERT INTO videos ...") or die(mysqli_error($conectar));
– Guilherme Nascimento
he presented this error "You have an error in your SQL syntax; check the manual that Corresponds to your Mysql server version for the right syntax to use near’s"
– Éo Ronaldo Dll
Maybe we’re missing something from these variables.
– KillerJack
escape? send? , I just did a test, if I type only text it records normal, but if I use "-" "[" "0" it presents this error, but all the BD fields are in varchar and the time registers "00:00" without problems, any idea?
– Éo Ronaldo Dll
Do as William replied.
– KillerJack