bonjour ,
je dois réaliser une requete qui sélectionne une table avec des conditions identiques
càd que je dois selectionner le champs région et le comparer avec plusieurs régions d'une autre table
exemple: $sql="SELECT * FROM matable WHERE champs1="region1" OR champs champs1='region2' OR champs1='region3' ";
j'ai essayer plusieurs versions condition après le "where" mais j'ai toujours des erreurs.
mysql_nums_rows me renvoi une erreur ou mysql_fetch_array me renvoi une erreur
quelqu'un aurait il une idée sur la question?je ne vois pas l'erreur dans la requete?
merci d'avance
voici mon code:
<?php
//connexion au serveur
require '../connection/config.php';
@mysql_connect($host,$user,$pass) or die("Impossible de se connecter à la base de données");
@mysql_select_db("$bdd") or die("Impossible de se connecter à la base de données");
//requête SQL:
$sqlpage = "SELECT * FROM page WHERE id_page= 7 " ;
//exécution de la requête:
$requetepage = mysql_query( $sqlpage) ;
//nb annonces par pages :
while($rang = mysql_fetch_array($requetepage))
{
$nbpage=$rang['contenu_page'];
}
?>
<html>
<head>
<title>Je cherche</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta http-equiv="content-style-type" content="text/css" />
<link href="../../css/firefox.css" rel="stylesheet" type="text/css">
</head>
<body link="#9999FF" vlink="#6699FF" alink="#FFFF00">
<center>
<div id="global">
<div id="menu">
<?php //include("../menu/bouton.htm"); ?>
</div>
<div id="banniere"></div>
<div id="login">
<?php //include("../fonctions/formlogoutadmin.php"); ?>
</div>
<div id="contenutop"></div>
<div id="contenu">
<div id="texte">
<center>
<?
$limit=$nbpage;//nombre max d'affichage par page
if($debut==""){
$debut=0;
}
$debut=$page*$limit;
//////////////////////////////requete sql////////////////////////////////////////////////////////////
$regionadmin="jodoigne";
$sqlregion = "SELECT * FROM region WHERE region_admin = '$regionadmin' " ;
$requeteregion = mysql_query( $sqlregion) ;
while($rang = mysql_fetch_array($requeteregion))
{
$region_r=$rang['region_r'];
//$txt.=" LOWER(region) REGEXP ('$region_r') OR ";
//$txt .= "region ='$region_r' OR ";
$txt .= "'$region_r',";
}
//$str = 'Ceci est un test.';
$txt{strlen($txt)-1} = "";
//$txt{strlen($txt)-3} = "";
//$txt{strlen($txt)-4} = "";
if($regionadmin != "superadmin"){
$sql="SELECT * FROM annonces WHERE Valider_annonce = 0 AND (region in ($txt)) ORDER BY dateajoute LIMIT $debut,$limit";
$sql2="SELECT * FROM annonces WHERE Valider_annonce = 0 AND (region in ($txt)) ORDER BY dateajoute";
}else{
$sql="SELECT * FROM annonces WHERE Valider_annonce = 0 LIMIT $debut,$limit";
$sql2="SELECT * FROM annonces WHERE Valider_annonce = 0 ";
}
echo $sql;
//delete auto des annonces dépassant la date limite de 3 mois
mysql_query("DELETE FROM annonces WHERE SYSDATE() > DATE_ADD(Dateajoute,INTERVAL '3' MONTH)");
//////////////////////////////requete sql////////////////////////////////////////////////////////////
//////////////////execution de la requete////////////////////////////////////////////////////////////
$requete2 = mysql_query( $sql2) ;
$nb_total=mysql_num_rows($requete2);
$requete = mysql_query( $sql) ;
$num=mysql_num_rows($requete);
//////////////////execution de la requete////////////////////////////////////////////////////////////
// AFFICHAGE DES RESULTATS
echo "<br>il y a <b>$nb_total</b> annonce";
if ($nb_total>1) {
echo "s";
}
$i=0;
//while($i<$num){
$c= 0;//alternance de couleurs
while($result = mysql_fetch_array($requete)) {//debut while result
//alternance de couleurs
if ($c%2 ==0)
{
$couleur="#FFFFFF";
}
else
{
$couleur="#F0F0F0";
}
//alternance de couleurs
?><table width="580" height="120" border="0" align="center" bgcolor="<?php echo $couleur ?>" >
<tr>
<td width="100" rowspan="6" align="center" class="text" >
<? if($result['photo'] ==''){
echo ("<img src=\"../../images/fond/photo.jpg\" width=\"100\" height=\"100\" border=\"0\" >");
}else{
echo'<img src="../fonctions/image.php?idimage='.$result['id_annonces'].' " width="100" height="100" border="0" >';
}
?>
</td>
<td width="68"> </td>
<td colspan="2" align="right" class="titre">Catégorie : </td>
<td align="left" class="text" >
<?php echo $result['theme'] ?>
</td>
</tr>
<tr>
<td class="titre">Date aj.:</td>
<td width="101" class="text" >
<?php $Nouvelle_Date = ereg_replace('^([0-9]{2,4})-([0-9]{1,2})-([0-9]{1,2})$',
'\3/\2/\1',
$result['dateajoute']);
echo $Nouvelle_Date ?>
</td>
<td colspan="2" align="center" class="titre">Descriptif</td>
</tr>
<tr>
<td class="titre">Titre:</td>
<td class="text" >
<?php echo $result['titre'] ?>
</td>
<td colspan="2" rowspan="3" align="center" class="text" >
<?php echo $result['descriptif'] ?>
</td>
</tr>
<tr>
<td class="titre">Prix:</td>
<td class="text" >
<?php echo $result['prix'] ?>
</td>
</tr>
<tr>
<td class="titre">Région:</td>
<td class="text" >
<?php echo $result['region'] ?>
</td>
</tr>
<tr>
<tr>
<td > </td>
<td> </td>
<td > </td>
<td class="text"><? echo("<a href=\"accepter_annonce2.php?id_annonces=".$result['id_annonces']."\">Accepter</a>") ; ?></td>
<td class="text"><? echo'<a href="#" onClick="confirme('.$result['id_annonces'].')" >Refuser</a>' ; ?></td>
</tr>
</table><?
$c++;//alternance de couleurs
}?>
<?
$i++;
//}
echo "<br>";
// AFFICHAGE DU LIEN PRECEDENT SI BESOIN EST
// (LA PREMIERE PAGES EST 0)
if ($page>0)
{
$precedent=$page-1;
print "<a href=\"$script_name?page=$precedent&mot=$mot\"><img src='../images/gotoleft.gif' border='0' align='middle'></a> \n";
}
// AFFICHAGE DES NUMEROS DE PAGE
$i=0;$j=1;
if($nb_total>$limit)
{
while($i<($nb_total/$limit))
{
if($i!=$page){echo "(<a href=\"$script_name?page=$i&mot=$mot\">$j</a>) ";}
else {echo "<b>($j)</b> ";}
$i++;$j++;
}
}
// AFFICHAGE DU LIEN SUIVANT SI BESOIN EST
if($debut+$limit<$nb_total)
{
$suivant=$page+1;
echo "<a href=\"$script_name?page=$suivant&mot=$mot\"><img src='../images/gotoright.gif' border='0' align='middle'></a>";
}
?>
</center>
</div> </div>
<div id="contenubottom"></div>
<div id="pied">
<?php //include("../../fonctions/pied.php"); ?>
</div>
</div>
</center>
</body>
</html>