By: pierce
Date: 2006-02-02
Time: 12:34
|
Problème de syntaxe
Bonjour,
voila j'essaye d'afficher un tableau grace à une requete sql avec une condition (un where)
Je vous passe mon code :
<?php
session_start();
require ("include/test_session.php");
include('connexion.php');
include('librairie/fonction.php');
include_once('tbs_class.php');
include ('include/entete.php');
include('include/menu.php');
$TBS = new clsTinyButStrong ;
//Appel de la feuille html
$TBS->LoadTemplate('liste_ref_lampefour.htm') ;
//Remplissage des listes
$TBS->MergeBlock('lst1' ,$cnx_id,"SELECT * FROM fournisseur") ;
//creation d'une pagination soit des valeurs par defauts
//Valeur par défaut
if (!isset($_GET)) $_GET=&$HTTP_GET_VARS ;
if (isset($_GET['PageNum'])) {
$PageNum = $_GET['PageNum'] ;
} else {
$PageNum = 1 ;
}
//Valeur par défaut
if (isset($_GET['RecCnt'])) {
$RecCnt = intval($_GET['RecCnt']) ;
} else {
$RecCnt = -1 ;
}
$PageSize = 10 ;
//Je recherche la reference de la societe
$nomsociete = $_POST['list_1'];
$rqreffour = " SELECT reffournisseur FROM fournisseur WHERE nomsociete = '$nomsociete'";
$resultref = mysql_query($rqreffour);
$champs = mysql_fetch_array($resultref);
$reffour = $champs[0];
//Affichage de test
echo $nomsociete;
echo '<br/>';
echo $reffour;
//tout s'affiche correctement
$RecCnt = $TBS->MergeBlock('blk1',$cnx_id,'SELECT * FROM vendre WHERE reffournisseur = $reffour',$PageSize,$PageNum,$RecCnt) ;
$TBS->MergeNavigationBar('nv','',$PageNum,$RecCnt,$PageSize) ;
//La sélection des items se fait ici
$TBS->Show() ;
?>
|
Il marque comme erreur :
TinyButStrong Error (MergeBlock [blk1]): MySql error message when opening the query: Unknown column '$reffour' in 'where clause'
|
Pourtant mes affichages de tests marchent très bien je comprend pas où est l'éerreu, je crois dans la syntaxe sql du blk1 mais je vois
|
By: Skrol29
Date: 2006-02-02
Time: 12:50
|
Re: Problème de syntaxe
Bonjour,
L'inclusion de variable Php dans une chaîne texte ne fonctionne qu'avec les délimiteurs double-quotes ("). Alors que tu as utilisé des simple-quotes pour ta requête.
C'est soit
'SELECT * FROM vendre WHERE reffournisseur = '.$reffour
|
soit
"SELECT * FROM vendre WHERE reffournisseur = $reffour"
|
|
By: pierce
Date: 2006-02-02
Time: 13:23
|
Re: Problème de syntaxe
Bhein en faite je viens de faire comme ca :
$RecCnt = $TBS->MergeBlock('blk1',$cnx_id,"SELECT * FROM vendre WHERE reffournisseur = '$reffour'" |
Et ca a l'aire de marche, mais au cas où je garde en note tes exemple ;) merci et à plus
tiusss
|
|
Posting in progress.
Please wait...
|