Jump to content

[Resolvido] Query INSERT aparentemente correcta não funciona


Peter
 Share

Recommended Posts

tou a fazer uma pagina de registo. Baseei me numa que já tinha feito antes mas nao funciona e eu nao percebo porquê. faço prints em varias zonas. com as variáveis etc etc e tudo corre bem. a unica que está mal é que nao envia para a BD os resultados.

function insert_into_reg($username,$password, $morada, $telefone, $email, $sexo) {// função que insere dados na tabela users através do formulario de registo
	addslashes($uername);
	addslashes($password);
	addslashes($morada);
	addslashes($telefone);
	addslashes($email);
	addslashes($sexo);


			mysql_select_db("belapizza", $this->ligacao) ;
			$query = 'INSERT INTO users(username,password,morada,telefone,email,sexo) VALUES ("'.$username.'","'.$password.'","'.$morada.'", "'.$telefone.'", "'.$email.'", "'.$sexo.'")' or die ("Falha no query". mysql_error());
			$resultado = mysql_query($query, $this->ligacao) ;
	}

o problema estaria aí. a funçao recebe os dados correctamente da pagina onde está o form. sei isso porque fiz prints das variaveis mesmo antes da query e resultou.

Link to comment
Share on other sites

Em SQL as string são metidas entre ' e não entre ".

10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Link to comment
Share on other sites

sim mas em php meto " para cortar as " anteriores para por as variaveis senao nao retornava os valores das variaveis mas sim o nome da variavel.

tenho isto feito assim noutro projecto e funciona

function insert_into_calendar($hora,$data, $nome, $telefone, $email, $comentarios, $tipodecorte, $password) {// função que insere dados na tabela calendario através do formulario de marcacao
	addslashes($hora);
	addslashes($data);
	addslashes($nome);
	addslashes($telefone);
	addslashes($email);
	addslashes($comentarios);
	addslashes($tiposdecorte);
	addslashes($password);

			mysql_select_db("calendario", $this->ligacao) ;
			$query = 'INSERT INTO calendario(hora,data,nome,telefone,email,comentarios,tiposdecorte,password) VALUES ('.$hora.',"'.$data.'","'.$nome.'", "'.$telefone.'", "'.$email.'", "'.$comentarios.'","'.$tipodecorte.'","'.$password.'")' or die ("Falha no query". mysql_error());
			$resultado = mysql_query($query, $this->ligacao) ;
	}
Link to comment
Share on other sites

Peter, em SQL string são metidas entre ' e não entre ".

Estou a repetir isto porque se correres o comando na consola da base de dados vai-te dar um erro.

Corrige isso e depois, se continuares a ter um erro, coloca aqui a mensagem de erro que estás a ter.

10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Link to comment
Share on other sites

mesmo se puser como dizes nao funciona. e alem disso nao está a dar erro nenhum e ja me doi a cabeça lol

Ok, comecemos pelo principio.

No comando delete que não funciona troca o "DELETE" por "SELECT *" e corre a query na consola da base de dados e vê lá que resultado dá.

10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Link to comment
Share on other sites

afinal tinhas razão  👍

alterei o codigo para

$query = "INSERT INTO users(username,password,morada,telefone,email,sexo) VALUES ('".$username."','".$password."','".$morada."', '".$telefone."', '".$email."', '".$sexo."')" or die ("Falha no query". mysql_error());

muito obrigado!

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.