ciao,
ho scritto questo script che mi elenca i prosotti in una categoria.provando al lavoro tutto funzionava correttamente, ma testandolo sul pc a casa ho un errore e non capisco come mai, penso sia dovuto alla versione del php
script
<?
$db=mysql_connect($host,$user,$pass) or die ("Errore nel Database");
//estraggo tutti i profotti in base alla categoria
if(!$categoria)
{categoria==1;}
//Verifico l'ordinamento
if(!$order)
{
$a[0]="`tb_prd`.`nome_prd`";
$a[1]="`tb_valori`.`prezzo`";
$a[2]="`tb_lingua`.`sigla`";
$im[0]="order02.gif";
$im[1]="order01.gif";
$im[2]="order01.gif";
}
else
{
switch ($order)
{
case 0:
$a[0]="`tb_prd`.`nome_prd`";
$a[1]="`tb_valori`.`prezzo`";
$a[2]="`tb_lingua`.`sigla`";
$im[0]="order02.gif";
$im[1]="order01.gif";
$im[2]="order01.gif";
break;
case 1:
$a[0]="`tb_lingua`.`sigla`";
$a[1]="`tb_valori`.`prezzo`";
$a[2]="`tb_prd`.`nome_prd`";
$im[0]="order01.gif";
$im[1]="order02.gif";
$im[2]="order01.gif";
break;
case 2:
$a[0]="`tb_valori`.`prezzo`";
$a[1]="`tb_prd`.`nome_prd`";
$a[2]="`tb_lingua`.`sigla`";
$im[0]="order01.gif";
$im[1]="order01.gif";
$im[2]="order02.gif";
break;
}
}
$sql="
SELECT
`tb_prd`.`id_prd`,
`tb_prd`.`nome_prd`,
`tb_prd`.`cod_prd`,
`tb_lingua`.`lingua`,
`tb_valori`.`sconto_riv`,
`tb_valori`.`sconto_cli`,
`tb_valori`.`descrizione`,
`tb_valori`.`peso`,
`tb_valori`.`colori`,
`tb_valori`.`materiale`,
`tb_valori`.`prezzo`,
`tb_copertine`.`filename_front`,
`tb_copertine`.`id_copertina`,
`tb_categoria`.`nome_cat`,
`tb_copertine`.`filesize_front`,
`tb_copertine`.`sizeimthumb`,
`tb_lingua`.`sigla`,
`tb_prd`.`id_categoria`,
`tb_prd`.`id_lingua`,
`tb_prd`.`id_user`,
`tb_prd`.`id_valori`
FROM
`tb_prd`
INNER JOIN `tb_valori` ON (`tb_prd`.`id_prd` = `tb_valori`.`id_prd`)
INNER JOIN `tb_lingua` ON (`tb_prd`.`id_lingua` = `tb_lingua`.`id_lingua`)
INNER JOIN `tb_copertine` ON (`tb_prd`.`id_prd` = `tb_copertine`.`id_prd`)
INNER JOIN `tb_categoria` ON (`tb_prd`.`id_categoria` = `tb_categoria`.`id_categoria`)
WHERE
(`tb_lingua`.`id_lingua` = 1) AND
(`tb_prd`.`id_categoria` = ".$categoria.")
ORDER BY
".$a[0].",
".$a[1].",
".$a[2]."
";
$val = mysql_db_query($database,$sql) or die (mysql_error());
errore
You have an error in your SQL syntax near ') ORDER BY `tb_prd`.`nome_prd`, `tb_valori`.`prezzo`, ' at line 32
nel test $order non è definito, perchè sulla versione a casa non funziona?
a casa ho PHP Version 4.3.10 (al lavoro è una versione precedente, ma non ricordo quale)
con mysql 3.23.49