Jump to content

[Resolvido] Erro: You have an error in your SQL syntax


AngelS

Recommended Posts

Boas... Estou a fazer um site em php , mas no meu alterar, dá-me um erro ao qual não sei a solução...

<?php
require_once('ligacao.php');

$ref_calc=$_GET['ref_calc'];

$query_calcs = "SELECT * FROM calcs where ref_calc='$ref_calc'";
$calcs = mysql_query($query_calcs) or die(mysql_error());
$row_calcs = mysql_fetch_assoc($calcs);
$totalRows_calcs = mysql_num_rows($calcs);
?>

Penso que esta parte do código é suficiente :S

Agredecia ajuda...

O erro é este:

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 'ref_calc']?>'' at line 1

Link to post
Share on other sites

Verifica o nome da tabela e dos campos , se mesmo assim não der tenta o seguinte:

<?php
require_once('ligacao.php');

$ref_calc=$_GET['ref_calc'];

$query_calcs = "SELECT * FROM calcs where ref_calc=".$ref_calc;
$calcs = mysql_query($query_calcs) or die(mysql_error());
$row_calcs = mysql_fetch_assoc($calcs);
$totalRows_calcs = mysql_num_rows($calcs);
?>

<?php include("assinatura.txt"); ?>

Link to post
Share on other sites

Fiz isso e o erro passou a ser:

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 '=' at line 1

Link to post
Share on other sites

No eliminar dá-me o mesmo erro e não tenho tabelas :s

<?php
require_once('ligacao.php');

$ref_calc=$_GET['ref_calc'];

$query_calcs = "delete FROM calcs where ref_calc='$ref_calc'";
$calcs = mysql_query($query_calcs) or die(mysql_error());

?>

<script>
location.href= "ads.php";
</script>

Link to post
Share on other sites
softklin

Tenta fazer o seguinte, e verifica se a tua query está correcta:

require_once('ligacao.php');

$ref_calc=$_GET['ref_calc'];

$query_calcs = "SELECT * FROM calcs where ref_calc='$ref_calc'";
var_dump($query_calcs);
$calcs = mysql_query($query_calcs) or die(mysql_error());

A query vai ser mostrada na página, e podes procurar por erros de sintaxe nela. BTW, deves escapar convenientemente os valores vindos do utilizador. No teu exemplo, atribuis o valor do utilizador directamente na query, que pode levar a falhas de segurança de SQL Injection. Uma solução rápida passa por substituir essa linha de atribuição por:

$ref_calc = mysql_real_escape_string($_GET['ref_calc']);

Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Link to post
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
×
×
  • 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.