Ir para conteúdo

POWERED BY:

Arquivado

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

MARCOSOFTHARD

Erro de sitaxe

Recommended Posts

Pessoal, fiz esse select e no meu funcionou normal, subi ele por ar e deu erro de sitaxe, provalvemente por causa da versão do mysql

 

"SELECT * FROM clientes_orcamentos WHERE id = $colname_visu"

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas qual é o erro?

 

Verifique:

- se existe valor na variavel $colname_visu.

- se o valor da variável é númerica

- se o valor da variáel for string, ela precisa ficar entre aspas no sql.

Compartilhar este post


Link para o post
Compartilhar em outros sites

o erro é esse

 

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

 

Mais a variavel esta recebendo valor normal, pois localmente funciona

Compartilhar este post


Link para o post
Compartilhar em outros sites

"SELECT * FROM clientes_orcamentos WHERE id = '$colname_visu'"

O erro é que você precisa aspear, acredito.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esse é o código dos dois select

 

if (isset($_GET['id_orcamento'])) {
  $colname_visu = $_GET['id_orcamento'];
}
mysql_select_db($database_localhost, $localhost);
$query_visu = sprintf("SELECT * FROM clientes_orcamentos WHERE id = $colname_visu");
$visu = mysql_query($query_visu, $localhost) or die(mysql_error());
$row_visu = mysql_fetch_assoc($visu);
$totalRows_visu = mysql_num_rows($visu);

$colname_cliente = "-1";
if (isset($_SERVER['id'])) {
  $colname_cliente = $_SERVER['id'];
}

$idc = $row_visu['id_cliente'];
mysql_select_db($database_localhost, $localhost);
$query_cliente = "SELECT * FROM cliente WHERE id = $idc";
$cliente = mysql_query($query_cliente, $localhost) or die(mysql_error());
$row_cliente = mysql_fetch_assoc($cliente);
$totalRows_cliente = mysql_num_rows($cliente);

Compartilhar este post


Link para o post
Compartilhar em outros sites

esse é o sql

 

CREATE TABLE IF NOT EXISTS `clientes_orcamentos` (
  `id` int(5) NOT NULL auto_increment,
  `qtde1` decimal(5,0) NOT NULL,
  `qtde3` decimal(5,0) NOT NULL,
  `qtde5` decimal(5,0) NOT NULL,
  `qtde7` decimal(5,0) NOT NULL,
  `qtde9` decimal(5,0) NOT NULL,
  `qtde9a` decimal(5,0) NOT NULL,
  `qtde11` decimal(5,0) NOT NULL,
  `qtde13` decimal(5,0) NOT NULL,
  `qtde15` decimal(5,0) NOT NULL,
  `qtde17` decimal(5,0) NOT NULL,
  `mold1` varchar(10) NOT NULL,
  `mold2` varchar(10) NOT NULL,
  `mold3` varchar(10) NOT NULL,
  `mold4` varchar(10) NOT NULL,
  `mold5` varchar(10) NOT NULL,
  `mold6` varchar(10) NOT NULL,
  `mold7` varchar(10) NOT NULL,
  `mold8` varchar(10) NOT NULL,
  `mold9` varchar(10) NOT NULL,
  `mold10` varchar(10) NOT NULL,
  `mold9a` varchar(10) NOT NULL,
  `mold10a` varchar(10) NOT NULL,
  `mold11` varchar(10) NOT NULL,
  `mold12` varchar(10) NOT NULL,
  `mold13` varchar(10) NOT NULL,
  `mold14` varchar(10) NOT NULL,
  `mold15` varchar(10) NOT NULL,
  `mold16` varchar(10) NOT NULL,
  `mold17` varchar(10) NOT NULL,
  `mold18` varchar(10) NOT NULL,
  `meda1` varchar(5) NOT NULL,
  `meda3` varchar(5) NOT NULL,
  `meda5` varchar(5) NOT NULL,
  `meda7` varchar(5) NOT NULL,
  `meda9` varchar(5) NOT NULL,
  `meda9a` varchar(5) NOT NULL,
  `meda11` varchar(5) NOT NULL,
  `meda13` varchar(5) NOT NULL,
  `meda15` varchar(5) NOT NULL,
  `meda17` varchar(5) NOT NULL,
  `medb1` varchar(5) NOT NULL,
  `medb3` varchar(5) NOT NULL,
  `medb5` varchar(5) NOT NULL,
  `medb7` varchar(5) NOT NULL,
  `medb9` varchar(5) NOT NULL,
  `medb9a` varchar(5) NOT NULL,
  `medb11` varchar(5) NOT NULL,
  `medb13` varchar(5) NOT NULL,
  `medb15` varchar(5) NOT NULL,
  `medb17` varchar(5) NOT NULL,
  `disciminacao1` varchar(100) NOT NULL,
  `disciminacao3` varchar(100) NOT NULL,
  `disciminacao5` varchar(100) NOT NULL,
  `disciminacao7` varchar(100) NOT NULL,
  `disciminacao9` varchar(100) NOT NULL,
  `disciminacao9a` varchar(100) NOT NULL,
  `disciminacao11` varchar(100) NOT NULL,
  `disciminacao13` varchar(100) NOT NULL,
  `disciminacao15` varchar(100) NOT NULL,
  `disciminacao17` varchar(100) NOT NULL,
  `id_cliente` varchar(5) NOT NULL,
  `numero` varchar(10) NOT NULL,
  `forma_pagamento` varchar(50) NOT NULL,
  `data_ent` varchar(15) NOT NULL,
  `desconto` varchar(10) NOT NULL,
  `data` date NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=47;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já coloquei os apóstrofos e nada

já fiz os seguintes testes

 

 

"SELECT * FROM clientes_orcamentos WHERE id = '$colname_visu'"
-------------------------------------------------------------------------------
"SELECT * FROM clientes_orcamentos WHERE id = "'.$colname_visu.'""
---------------------------------------------------------------------------------
"SELECT * FROM clientes_orcamentos WHERE id = $colname_visu"

E nada

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coloca isso logo no inicio do script, antes de todos os selects:

echo $_GET['id_orcamento'];
exit;

Me fala o resultado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha, se você colocasse o código completo deste o inicio ficaria melhor(rapido) para ajudar.

 

Verifique se você está passando o parametro id_orcamento através do GET.

Não se esqueça de ter que aspear '$variavel' na consulta SQL.

No script abaixo, caso não tenha feito, está faltando você fazer a conexão. - mysql_connect('localhost','base','senha');

Não entendi a função do sprintf. Eu simplificaria colocando $sql=mysql_query("Select... LIMIT 1");

depois $mostrar=mysql_fetch_array($sql); ou $row_visu.

 

if (isset($_GET['id_orcamento'])) {
  $colname_visu = $_GET['id_orcamento'];
}
mysql_select_db($database_localhost, $localhost);
$query_visu = sprintf("SELECT * FROM clientes_orcamentos WHERE id = $colname_visu");
$visu = mysql_query($query_visu, $localhost) or die(mysql_error());
$row_visu = mysql_fetch_assoc($visu);
$totalRows_visu = mysql_num_rows($visu);

$colname_cliente = "-1";
if (isset($_SERVER['id'])) {
  $colname_cliente = $_SERVER['id'];
}

$idc = $row_visu['id_cliente'];
mysql_select_db($database_localhost, $localhost);
$query_cliente = "SELECT * FROM cliente WHERE id = $idc";
$cliente = mysql_query($query_cliente, $localhost) or die(mysql_error());
$row_cliente = mysql_fetch_assoc($cliente);
$totalRows_cliente = mysql_num_rows($cliente);

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.