par
agité » 05 nov. 2007, 13:24
Quand je fais cette requete en fait il ya toujours un probleme, cette fois ci, la requete se fait bien mais les reponses se font pour chaque ID commune.
les tables concernées :
Code : Tout sélectionner
CREATE TABLE `programme` (
`Id` int(11) NOT NULL auto_increment,
`Nom` varchar(255) collate utf8_unicode_ci NOT NULL,
`Adresse` varchar(255) collate utf8_unicode_ci default NULL,
`Cp` varchar(5) collate utf8_unicode_ci NOT NULL,
`Ville` varchar(70) collate utf8_unicode_ci NOT NULL,
`Id_region` varchar(5) collate utf8_unicode_ci NOT NULL,
`Date_comm` varchar(255) collate utf8_unicode_ci default NULL,
`Date_livraison` varchar(255) collate utf8_unicode_ci default NULL,
`Date_signature` varchar(255) collate utf8_unicode_ci default NULL,
`Id_fiscalite` varchar(5) collate utf8_unicode_ci NOT NULL,
`Presentation` text collate utf8_unicode_ci,
`Photo_0` varchar(255) collate utf8_unicode_ci default NULL,
`Photo_1` varchar(255) collate utf8_unicode_ci default NULL,
`Photo_2` varchar(255) collate utf8_unicode_ci default NULL,
UNIQUE KEY `Id` (`Id`),
KEY `id_region` (`Id_region`),
KEY `id_fiscalite` (`Id_fiscalite`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=4 ;
et
Code : Tout sélectionner
CREATE TABLE `lot` (
`Id` int(11) NOT NULL auto_increment,
`Id_programme` int(11) NOT NULL,
`Code` varchar(10) collate utf8_unicode_ci NOT NULL,
`Etage` int(2) default NULL,
`Rentabilite` float default NULL,
`Id_genre` varchar(5) collate utf8_unicode_ci NOT NULL,
`Id_orientation` varchar(5) collate utf8_unicode_ci NOT NULL,
`Id_type` varchar(5) collate utf8_unicode_ci NOT NULL,
`Surface_total` float default NULL,
`Surface_hab` float default NULL,
`Prix_base` float default NULL,
`Prix_pack2` float default NULL,
`Loyer_mensuel` float default NULL,
`Loyer_borloo` float default NULL,
`Loyer_robien` float default NULL,
`Infos_supp` text collate utf8_unicode_ci NOT NULL,
`Id_etat` enum('signature','uncom','option','fax','reserv','disponible') collate utf8_unicode_ci NOT NULL default 'disponible',
`Date_chgmt_etat` datetime default NULL,
`Livraison` varchar(255) collate utf8_unicode_ci default NULL,
`Id_vendeur` int(11) NOT NULL,
`Nom_vendeur` varchar(255) collate utf8_unicode_ci default NULL,
`Acheteur` varchar(255) collate utf8_unicode_ci default NULL,
PRIMARY KEY (`Id`),
KEY `id_programme` (`Id_programme`),
KEY `id_genre` (`Id_genre`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=4 ;
La fonction :
function Lister_Lots($Option1,$Option2,$Option3,$Prix_min,$Prix_max)
{
$Req_Liste_Lot = mysql_query("
SELECT * FROM `lot`
INNER JOIN programme ON (programme.Id = lot.Id_programme)
WHERE Id_region LIKE '".$Option2."'
AND Id_fiscalite LIKE '".$Option1."'
AND Id_genre LIKE '".$Option3."'
AND Prix_base BETWEEN '".$Prix_min."'
AND '".$Prix_max."' ") or die(mysql_error());
while($Array_Liste_Lot = mysql_fetch_array($Req_Liste_Lot))
{
?>
<tr>
<td><?php echo $Array_Liste_Lot['Cp']; ?></td>
<td><?php echo $Array_Liste_Lot['Ville']; ?></td>
<td><?php echo $Array_Liste_Lot['Id']; ?></td>
<td><?php echo $Array_Liste_Lot['Id_type']; ?></td>
<td><?php echo $Array_Liste_Lot['Id_genre']; ?></td>
<td><?php echo $Array_Liste_Lot['Etage']; ?></td>
<td><?php echo $Array_Liste_Lot['Id_etat']; ?></td>
<td><?php echo $Array_Liste_Lot['Prix_base']; ?></td>
<td><?php echo $Array_Liste_Lot['Loyer_mensuel']; ?></td>
</tr>
<?php
}
}
Quand je fais cette requete en fait il ya toujours un probleme, cette fois ci, la requete se fait bien mais les reponses se font pour chaque ID commune.
les tables concernées :
[code]CREATE TABLE `programme` (
`Id` int(11) NOT NULL auto_increment,
`Nom` varchar(255) collate utf8_unicode_ci NOT NULL,
`Adresse` varchar(255) collate utf8_unicode_ci default NULL,
`Cp` varchar(5) collate utf8_unicode_ci NOT NULL,
`Ville` varchar(70) collate utf8_unicode_ci NOT NULL,
`Id_region` varchar(5) collate utf8_unicode_ci NOT NULL,
`Date_comm` varchar(255) collate utf8_unicode_ci default NULL,
`Date_livraison` varchar(255) collate utf8_unicode_ci default NULL,
`Date_signature` varchar(255) collate utf8_unicode_ci default NULL,
`Id_fiscalite` varchar(5) collate utf8_unicode_ci NOT NULL,
`Presentation` text collate utf8_unicode_ci,
`Photo_0` varchar(255) collate utf8_unicode_ci default NULL,
`Photo_1` varchar(255) collate utf8_unicode_ci default NULL,
`Photo_2` varchar(255) collate utf8_unicode_ci default NULL,
UNIQUE KEY `Id` (`Id`),
KEY `id_region` (`Id_region`),
KEY `id_fiscalite` (`Id_fiscalite`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=4 ;[/code]
et
[code]CREATE TABLE `lot` (
`Id` int(11) NOT NULL auto_increment,
`Id_programme` int(11) NOT NULL,
`Code` varchar(10) collate utf8_unicode_ci NOT NULL,
`Etage` int(2) default NULL,
`Rentabilite` float default NULL,
`Id_genre` varchar(5) collate utf8_unicode_ci NOT NULL,
`Id_orientation` varchar(5) collate utf8_unicode_ci NOT NULL,
`Id_type` varchar(5) collate utf8_unicode_ci NOT NULL,
`Surface_total` float default NULL,
`Surface_hab` float default NULL,
`Prix_base` float default NULL,
`Prix_pack2` float default NULL,
`Loyer_mensuel` float default NULL,
`Loyer_borloo` float default NULL,
`Loyer_robien` float default NULL,
`Infos_supp` text collate utf8_unicode_ci NOT NULL,
`Id_etat` enum('signature','uncom','option','fax','reserv','disponible') collate utf8_unicode_ci NOT NULL default 'disponible',
`Date_chgmt_etat` datetime default NULL,
`Livraison` varchar(255) collate utf8_unicode_ci default NULL,
`Id_vendeur` int(11) NOT NULL,
`Nom_vendeur` varchar(255) collate utf8_unicode_ci default NULL,
`Acheteur` varchar(255) collate utf8_unicode_ci default NULL,
PRIMARY KEY (`Id`),
KEY `id_programme` (`Id_programme`),
KEY `id_genre` (`Id_genre`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=4 ;[/code]
La fonction :
[php]function Lister_Lots($Option1,$Option2,$Option3,$Prix_min,$Prix_max)
{
$Req_Liste_Lot = mysql_query("
SELECT * FROM `lot`
INNER JOIN programme ON (programme.Id = lot.Id_programme)
WHERE Id_region LIKE '".$Option2."'
AND Id_fiscalite LIKE '".$Option1."'
AND Id_genre LIKE '".$Option3."'
AND Prix_base BETWEEN '".$Prix_min."'
AND '".$Prix_max."' ") or die(mysql_error());
while($Array_Liste_Lot = mysql_fetch_array($Req_Liste_Lot))
{
?>
<tr>
<td><?php echo $Array_Liste_Lot['Cp']; ?></td>
<td><?php echo $Array_Liste_Lot['Ville']; ?></td>
<td><?php echo $Array_Liste_Lot['Id']; ?></td>
<td><?php echo $Array_Liste_Lot['Id_type']; ?></td>
<td><?php echo $Array_Liste_Lot['Id_genre']; ?></td>
<td><?php echo $Array_Liste_Lot['Etage']; ?></td>
<td><?php echo $Array_Liste_Lot['Id_etat']; ?></td>
<td><?php echo $Array_Liste_Lot['Prix_base']; ?></td>
<td><?php echo $Array_Liste_Lot['Loyer_mensuel']; ?></td>
</tr>
<?php
}
}[/php]