Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

PhantOmL0rd

[Resolvido] Problema em adicionar dados no banco

Recommended Posts

E ae galera???

 

fiz um script aki pra adicionar fotos em uma determinada categoria, só q ta dando erro e eu não to conseguindo resolver,espero que alguem me ajude por obséquio...

 

Então vamos la, eu preencho o formulário normal e aparece a mensagem Foto inserida com sucesso, a foto ta sendo upada normalmente, só que no banco de dados não adiciona nada...

 

coloquei o mysqli_error() e aparece o seguinte erro na página :

Out of range value adjusted for column 'idCATEGORIA' at row 1

 

Estou utilizando o WampServer

 

Eis o script...

<?php 
/* Inclui na página o código de segurança. 
   Evita que usuários não autorizados vizualizem a página. 
*/
include("include/seguranca.php");

/* Conectando com o banco de dados. */
require_once("../conexao/conexao.php");

/* Verificando a CATEGORIA selecionada */
$idCATEGORIA = $_GET['select_categoria'];

if($idCATEGORIA == 0){
	echo "<META HTTP-EQUIV=REFRESH CONTENT=0;url=fotos.php>";
}

if(isset($_POST['tituloFOT'])){//if 0

	$tituloFOT = trim(strtoupper($_POST['tituloFOT']));
	/*Inclui na página o código de upload de imagem*/
  	include ("include/up_fotos.php");
	
	$insert_fotos = mysqli_query($con,"INSERT INTO fotos (idCATEGORIA,tituloFOT,caminhoFOT)
					   VALUES ('$idCATEGORIA','$tituloFOT','$imagem_nome')");
	echo mysqli_error($con);

	$msg_foto = "Foto inserida com sucesso";
  	echo '<script>alert("'.$msg_foto.'")</script>';

}//fim if 0

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>ADMIN - Inserir Fotos</title>
<!--Chamando a CSS-->
<link href="css/estiloAdm.css" rel="stylesheet" type="text/css" />
</head>

<body>
<div id="container">
	
    <!-- Layout da Página -->
    <?php include("include/layout.php");?>
    
    <div id="conteudo">
    	<hr />
		<a href="home.php">admin</a> >> <a href="fotos.php">fotos</a> >>inserir fotos<br />
		<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" enctype="multipart/form-data">
		<fieldset>
			<legend>Inserir Foto</legend>
			<label>Título:<br />
              <input name="tituloFOT" type="text" size="25" />
            </label><br />
			<label>Foto:<br />
              <input name="caminhoFOT" type="file" size="25" />
            </label><br />
			<input id="enviarBtn" name="enviar" type="image" src="../imagens/enviarBtn.jpg" alt="Enviar" />
		</fieldset>
		</form>
    </div>
    <!--Fim Div conteudo-->
</div>
<!--Fim Div container-->

</body>
</html>

a tabela do banco de dados...

CREATE TABLE FOTOS (
 idFOTOS INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
 idCATEGORIA INTEGER UNSIGNED NOT NULL,
 tituloFOT VARCHAR(45) NOT NULL,
 caminhoFOT VARCHAR(255) NOT NULL,
 thumbFOT VARCHAR(255) NULL,
 PRIMARY KEY(idFOTOS),
 FOREIGN KEY(idCATEGORIA)
   REFERENCES CATEGORIA(idCATEGORIA)
     ON DELETE CASCADE
     ON UPDATE CASCADE
);

 

Se alguem tiver uma luz ae, me ajude...

desde já agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como está a estrutura do campo no Mysql? Tipo, tamanho, etc...

 

Qual o tamanho do dado que está sendo enviado para gravar?

 

Qual a query enviada para o banco?

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ae agora eu to usando o xampp e ta dando certo, só q quando eu adiciono a foto no banco, o idCATEGORIA sempre ta sendo adicionado como 0, o resto dos campos adicionam normalmente. Alguem sabe onde esta o erro??

Compartilhar este post


Link para o post
Compartilhar em outros sites

Imprima a query antes de enviar para o banco...

 

Carlos Eduardo

 

Colocando um echo ali... aparece o id certo, mas no banco adiciona 0.

 

/* Verificando a CATEGORIA selecionada */
$idCATEGORIA = $_GET['select_categoria'];

echo $idCATEGORIA;

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que eu disse foi para imprimir a query antes de executar... assim...

 

$qry = "INSERT INTO fotos (idCATEGORIA,tituloFOT,caminhoFOT) VALUES ('$idCATEGORIA','$tituloFOT','$imagem_nome')";
echo 'A query é '.$qry;
$insert_fotos = mysqli_query($con,$qry);

Veja o que aparece.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que eu disse foi para imprimir a query antes de executar... assim...

 

$qry = "INSERT INTO fotos (idCATEGORIA,tituloFOT,caminhoFOT) VALUES ('$idCATEGORIA','$tituloFOT','$imagem_nome')";
echo 'A query é '.$qry;
$insert_fotos = mysqli_query($con,$qry);

Veja o que aparece.

 

Carlos Eduardo

 

ta aparecendo:

A query é INSERT INTO fotos (idCATEGORIA,tituloFOT,caminhoFOT) VALUES ('','222222','8558c3a49f4571eec2c79f5f9ba7ba98.jpg')

 

Será pq q não ta aparecendo o valor da variável $idCATEGORIA ???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como está o teu código agora?

 

Carlos Eduardo

 

Ta igual, só editei o :

$insert_fotos = mysqli_query($con,"INSERT INTO fotos (idCATEGORIA,tituloFOT,caminhoFOT)
                                   VALUES ('$idCATEGORIA','$tituloFOT','$imagem_nome')");

por:

$qry = "INSERT INTO fotos (idCATEGORIA,tituloFOT,caminhoFOT) VALUES ('$idCATEGORIA','$tituloFOT','$imagem_nome')";
	
echo 'A query é '.$qry;
$insert_fotos = mysqli_query($con,$qry);

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu acho que esse é o motivo

<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" enctype="multipart/form-data">
<?php echo $_SERVER['PHP_SELF']; ?> não imprime o resto da url, por exemplo

index.php?id=20 irá imprimir index.php apenas, perdendo todos os dados enviados pela url...

 

use <?php echo $_SERVER['REQUEST_URI']; ?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu acho que esse é o motivo

<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" enctype="multipart/form-data">
<?php echo $_SERVER['PHP_SELF']; ?> não imprime o resto da url, por exemplo

index.php?id=20 irá imprimir index.php apenas, perdendo todos os dados enviados pela url...

 

use <?php echo $_SERVER['REQUEST_URI']; ?>

 

Kra SENSACIONAL, muito obrigado mesmo hehehehe, resolveu todo meu problema, atá a parte de não funcionar no wamp...

VLWS d+++.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.