recherche avec php !

Eléphanteau du PHP | 26 Messages

12 déc. 2012, 16:13

Bonjour à tous !
Grâce à un membre du forum, j'ai pu résoudre un gros problème sur mon site, mais il m'en reste un petit ! enfin je suppose qu'il est petit :?
Voilà, sur mon site : www.lingerieportee.fr on peut rechercher dans toute la france mais qu'une categorie à la fois, je voulais que l'on puisse rechercher dans toute la france ET dans toutes les categories alors j'ai modifié mon fichier moteur et mon index pour essayer mais j'ai une erreur, alors voila le doage du moteur.php, j'ai ajouter "Selection de toutes les categories", et ça ne fonctionne pas :(
voila le codage :
<?php


if($_GET['regionmoteur'] == true && $_GET['categoriemoteur'] == true)
{

$adminsup = 'novarible1';
$login = 'novariable2';
$adminvalide = 'novarible3';
$loginadmin = 'novarible4';

$nbsujet = 20;

if ($page ==""){$page = 1 ;}

$search1 = $_GET['searchmoteur'];
$search1 = strtr($search1,'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ','AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$search1 = str_replace("<", "", $search1);
$search1 = str_replace(">", "", $search1);
$search1 = str_replace("?", "", $search1);
$search1 = str_replace("!", "", $search1);
$search1 = str_replace(".", "", $search1);
$search1 = str_replace( array( "c\'","l\'","d\'"," mais "," ou "," et "," donc "," or "," ni "," car "," je "," il "," lui "," ils "," elle "," vous ",
" vos "," votre "," mes "," mien "," tien "," tiens "," tout "," toute "," toutes "," le "," la "," les "," nos ",
" alors "," au "," aucuns "," aussi "," autre "," avant "," avec "," avoir "," bon "," car "," ce ",
" cela "," ces "," ceux "," chaque "," ci "," comme "," comment "," dans "," des "," du "," dedans ",
" dehors "," depuis "," deux "," devrait "," doit "," donc "," dos "," droite "," debut "," elle ",
" elles "," en "," encore "," essai "," est "," et "," eu "," fait "," faites "," fois "," font ",
" force "," haut "," hors "," ici "," il "," ils "," juste "," la "," le "," les "," leur "," là ",
" ma "," maintenant "," mais "," mes "," mine "," moins "," mon "," mot "," meme "," ni "," nommes ",
" notre "," nous "," nouveaux "," ou "," où "," par "," parce "," parole "," pas "," personnes ",
" peut "," peu "," plupart "," pour "," pourquoi "," quand "," que "," quel "," quelle ",
" quelles "," quels "," qui "," sa "," sans "," ses "," seulement "," si "," sien "," son ",
" sont "," sous "," soyez "," sujet "," sur "," ta "," tandis "," tellement "," tels "," tes "," ton ",
" tous "," tout "," trop "," tres "," tu "," valeur "," voie "," voient "," vont "," votre "," vous ",
" vu "," ça "," etaient "," etat "," etions "," ete "," etre "," un "," deux "," trois "," quatre "," cinq ",
" six "," sept "," huit "," neuf "," dix "," avec "," chez "," par "," dans "," des "," en "," de "," une ",
" votre "," meilleurs "," entre "," entres "," depuis "," alors "," ne "," pas "," du "," meme ",
" ou "," nom "," seuls "," acceptes "," ayant "," vos "," votre "," mes "," mien "," mien "," tien "," tiens "," tout "," toute "," toutes ",
" que "," quoi "," qui "," comment "," peu "," peut "," pis "," puis "," pas "," chaque "," chacun "," chacune ",
" son "," ses "," au "," aux "," se "," sur "," ce "," ceux "," cette "," ca "," ci "," ceci "," cela ",
" aussi "," pour "," petit "," grand "," moyen "," large "," haut "," quelque "," cependant "," bas "," milieu "," droite ",
" gauche "," dit "," etre "," leur "," leurs "," plus "," moin "," moins ", " neanmoins "," toutefois "," bien "," mieux "," vite "," mal "," debout ",
" plutot "," aussi "," ainsi "," comme "," ensemble "," comment "," rien "," aussi "," assez "," autant "," beaucoup "," moins "," peu "," tres ",
" fort "," tant "," davantage "," environ "," plus "," hier "," aujourd'hui "," alors "," deja "," apres "," quand "," toujours "," enfin ",
" soudain "," depuis "," demain "," dorenavant "," longtemps "," ailleurs "," autour "," dedans "," derriere "," dessus "," dessous ",
" partout "," soit "," volontiers "," assurement "," certainement "," vraiment "," non "," aucun "," guere "," jamais "," probablement ",
" sans "," doute "," apparemment "," tellement "," trop "," maintenant "," Locutions "," Adverbiales "," revanche "," sans "," cesse ",
" present "," general "," contre "," dessus "," ailleurs "," es "," est "," sont "," son "," va "," suis "," ai "," viens "), " ", $search1 );
$search1 = preg_replace('#(\s|\b)[\w]{1,2}\s#i', ' ', $search1);
$search1 = preg_replace('/\s\s+/', ' ', $search1);
$search1 = preg_replace('/([^.a-z0-9]+)/i', ' ', $search1);
$search1 = trim(rtrim(strtolower($search1)));
$search1 = preg_replace('/([^.a-z0-9]+)/i', '|', $search1);


if ($search1 == false || $search1 == "que|recherchez|vous")
{$search1 = "0";}

$searchfin=".*($search1).*";

$cat = $_GET['categoriemoteur'];

//Si on selection tout la france on continu

if ($regionmoteur = "France")

{

$tabRegion = array("Alsace","Aquitaine","Auvergne","Basse-Normandie","Bourgogne","Bretagne","Centre","Champagne-Ardenne","Corse","Franche-Comte","Haute-Normandie","Ile-de-France","Languedoc-Roussillon","Limousin","Lorraine","Midi-Pyrenees","Nord-Pas-de-Calais","Pays-de-la-Loire","Picardie","Poitou-Charentes","Provence-Alpes-Cote-d-Azur","Rhone-Alpes",);

$i=0;
$compteur=0;
$tableau = array();

//Selection toutes catégories

if ($categoriemoteur = "Toutes")

{

$cat = array("culotte","Chaussette","soutif","collant","nuisette","autre","talons","sport","tongs","pantoufle","autre","tshirt","pantalon","pull","robe","chapeau","fourrure","autre","elle","lui","fetish","accessoire","bijou","aliment","Autres","magazine");

$tableau = array();

  // début de la boucle avec foreach
foreach ($tabRegion as $value) {
$dir2 = opendir("../region/".$value."/".$cat."/annonce/");
while (false !== ($File = readdir($dir2))) {
if(eregi($searchfin,$File))
  {
   $tableau[] =  '../region/'.$value.'/'.$cat.'/annonce/'.$File.'';
                           $compteur++;   $i++;  
  } 
                                            }

} //fin de la boucle


closedir($dir2);
rsort($tableau);


?>

<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0"  width="750">
<TR valign="top">
<td>
<?php

echo 'Résulats pour la catégorie : '.$_GET['categoriemoteur'].' dans '.$_GET['regionmoteur'].'<br><br>';


?>

</td><td align="right">

<?php

echo ''.$i.' Annonce(s) <a href="moteur-prix.php?regionmoteur='.$_GET['regionmoteur'].'&categoriemoteur='.$_GET['categoriemoteur'].'&searchmoteur='.$_GET['searchmoteur'].'&page=1"  class="lien">Trier par prix</a>';


?>

</td></tr></table><br><br>

<?php


$Max = count($tableau);

$pagemin = $page*$nbsujet-$nbsujet;
$nbpage = $Max/$nbsujet;
$nbpage = ceil($nbpage);
   if ($page == $nbpage) {$pagemax = $Max;}
           else {$pagemax = $page*$nbsujet;}

if ($Max != 0)
{
for($i = $pagemin; $i != $pagemax; $i++)
{
include "$tableau[$i]"; 
}
} 


if ($compteur == 0) {
echo '<table cellpadding="0" cellspacing="0" width="750" align="center" border="0"><TR><TD><br><br><font style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:13px; color:#d77d73"><b>Aucun r&eacute;sultat n\'a &eacute;t&eacute; trouv&eacute; &agrave; votre requ&ecirc;te "',$_GET['searchmoteur'],'"</b></font><br><br><font style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:13px; color:#454545"> Vérifier l\'orthographe de votre ou de vos mots-clés. <br>Utiliser un ou plusieurs mots-clés différents (un seul peut suffire).<br>Elargir votre recherche avec un ou des mots-clés plus génériques. <br>Essayer avec moins de mots-clés<br></font></td></tr></table>';
}

$nbpage = $Max/$nbsujet;
$nbpage = ceil($nbpage);
$nbpage2 = $nbpage +1 ;


echo '<div id="pagination">';

for ($i = 1 ; $i <= $nbpage ; $i++) {
  if ($i < ($page-10) )
    $i = $page - 10;
        if ($i >= $page + 10 AND $i <= $nbpage - 10)
                echo "...";
  if ($i > ($page+4) )
    $i = $nbpage ;
  if ($i == $page )
    echo '<font class="liens02"><b>['.$i.']</b></font>&nbsp;&nbsp;';
  else
  echo '<a href=moteur.php?regionmoteur='.$_GET['regionmoteur'].'&categoriemoteur='.$_GET['categoriemoteur'].'&searchmoteur='.$search1.'&page='.$i.' class="liens02"><b>'.$i.'</b></a>&nbsp;&nbsp;';
 }


}

// Si la france n est pas selectionner on change.

else

{

if ($search1 == false || $search1 == "que|recherchez|vous")
{$search1 = "0";}

$searchfin=".*($search1).*";

$dir2 = opendir('../region/'.$_GET['regionmoteur'].'/'.$_GET['categoriemoteur'].'/annonce/');
$tableau = array();
$i=0;
$getpages=0;
while (false !== ($File = readdir($dir2))) {

if(eregi($searchfin,$File))
  { $getpages++;
   $tableau[] =  '../region/'.$_GET['regionmoteur'].'/'.$_GET['categoriemoteur'].'/annonce/'.$File.'';
$i++;
                                  }

                                   }

?>

<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0"  width="750">
<TR valign="top">
<td>
<?php

echo 'Résulats pour la cétagorie : '.$_GET['categoriemoteur'].' dans '.$_GET['regionmoteur'].'<br><br>';


?>

</td><td align="right">

<?php

echo ''.$i.' Annonce(s) <a href="moteur-prix.php?regionmoteur='.$_GET['regionmoteur'].'&categoriemoteur='.$_GET['categoriemoteur'].'&searchmoteur='.$search1.'&page=1"  class="lien">Trier par prix</a>';


?>

</td></tr></table><br><br>

<?php


if ($getpages == 0) {
echo '
<table cellpadding="0" cellspacing="0" width="750" align="center" border="0">
<TR>
  <TD><br><br><font style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:13px; color:#d77d73"><b>Aucun r&eacute;sultat n\'a &eacute;t&eacute; trouv&eacute; &agrave; votre requ&ecirc;te "',$_GET['searchmoteur'],'"</b></font><br><br><font style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:13px; color:#454545"> Vérifier l\'orthographe de votre ou de vos mots-clés. <br>Utiliser un ou plusieurs mots-clés différents (un seul peut suffire).<br>Elargir votre recherche avec un ou des mots-clés plus génériques. <br>Essayer avec moins de mots-clés<br></font></td></tr></table>';

}


closedir($dir2);
rsort($tableau);

$Max = count($tableau);
$pagemin = $page*$nbsujet-$nbsujet;
$nbpage = $Max/$nbsujet;
$nbpage = ceil($nbpage);
   if ($page == $nbpage) {$pagemax = $Max;}
           else {$pagemax = $page*$nbsujet;}

 if ($Max != 0){
for($i = $pagemin; $i != $pagemax; $i++){
                                include "$tableau[$i]";

                                        }
		     }

echo '<p>';


$nbpage = $Max/$nbsujet;
$nbpage = ceil($nbpage);
$nbpage2 = $nbpage +1 ;

for ($i = 1 ; $i <= $nbpage ; $i++) {
  if ($i < ($page-10) )
    $i = $page - 10;
        if ($i >= $page + 10 AND $i <= $nbpage - 10)
                echo "...";
  if ($i > ($page+4) )
    $i = $nbpage ;
  if ($i == $page )
    echo '<font class="liens02"><b>['.$i.']</b></font>&nbsp;&nbsp;';
  else
  echo '<a href=moteur.php?regionmoteur='.$_GET['regionmoteur'].'&categoriemoteur='.$_GET['categoriemoteur'].'&searchmoteur='.$search1.'&page='.$i.' class="liens02"><b>'.$i.'</b></a>&nbsp;&nbsp;';
 }


}





// si appel à la page = rien
}
else

{
}

?>
Merci à tous !

Eléphanteau du PHP | 26 Messages

12 déc. 2012, 21:12

un petit up pour ne pas passer inaperçu ! J'espère que ce n'est pas interdit ! :)

ViPHP
xTG
ViPHP | 7331 Messages

12 déc. 2012, 22:15

pour essayer mais j'ai une erreur
Pour qu'on t'aide il va falloir nous donner le message. :roll:

Eléphanteau du PHP | 26 Messages

12 déc. 2012, 22:40

la voila :
Parse error: syntax error, unexpected $end in /homepages/33/d445123544/htdocs/annonce/moteur.php on line 568

:wink:

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

12 déc. 2012, 23:13

salut,


tu n'as pas fermé une accolade.

par exemple celle du if au début ?


@+
Il en faut peu pour être heureux ......

Eléphanteau du PHP | 26 Messages

12 déc. 2012, 23:31

mais a quel endroit la fermer car j'ai essayé avant "début de la boucle for each" mais ça me met
Warning: opendir(../region/Alsace/Array/annonce/) [function.opendir]: failed to open dir: No such file or directory in /homepages/33/d445123544/htdocs/annonce/moteur.php on line 312
pour toutes les regions !

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

12 déc. 2012, 23:33

vu que tu es "l'auteur" du script tu devrais être le mieux placer pour répondre a cette question :)


donc repère le code qui correspond a cette condition et ajoute la } juste après.


@+
Il en faut peu pour être heureux ......

Eléphanteau du PHP | 26 Messages

13 déc. 2012, 00:04

Attention ! a aucun moment je n'ai dis être l'auteur du script, il est bien précisé même qu'il est libre de droit, mais bon, détail. Je remarque en tous cas qu'il y a une certaine distance entre les utilisateur noob et les pro php, toujours un espèce de foutage de gueule, je trouve ça dommage, on essaye d'apprendre et on nous prend de haut.
Bref, ça n'arrange pas mon problème. J'ai bien essayé de reperé le code qui correspond à cette condition mais je n'ai pas trouvé.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

13 déc. 2012, 00:23

aucun foutage de gueule.

le but du forum est l'apprentissage et non la réalisation gratis.

ensuite tu donne 285 lignes de code alors que le message indique 568 lignes donc on ne peux pas voir le script en entier.


mais le conseil reste valable : il faut voir à quoi sert cette condition et la clore quand le traitement est terminé.

je vais même t'aider encore, tu as, ligne 70, cette condition if ($regionmoteur = "France")
or cette condition sera toujours vrai car il s'agit d'une affectation et non d'une comparaison.
Si tu ajoute un égale tu va avoir une erreur car $regionmoteur n'existe pas.

Il faut vraiment que tu sache comment le script fonctionne pour le modifier.

@+
Il en faut peu pour être heureux ......

Eléphanteau du PHP | 26 Messages

13 déc. 2012, 09:47

ok, a ce que j'ai compris regionmoteur = "France" fait s'afficher toutes les régions par le biais de $tabregion "array". J'ai donc voulu faire pareil, j'ai écris le code If 'categoriemoteur" = "Toutes". Mais j'ai été presomptueux et je vois que je ne m'y connais pas du tout. Voici le code en entier :
<?php
$titreregion = $_GET['regionmoteur'];
$titreregion = str_replace("-", " ", $titreregion);
$titrecategorie = $_GET['categoriemoteur'];
$titrecategorie = str_replace("-", " ", $titrecategorie);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<title>Annonce <?php echo ''.$titreregion.''; ?> de la catégorie : <?php echo ''.$titrecategorie.''; ?></title> 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
<link rel="stylesheet" href="../images/style.css" type="text/css"> 
<script type='text/javascript'> 
<!--
function verif_formulaire2()
{
 

 if(document.form2.regionmoteur.value == '') {
   alert('Veuillez entrer votre region!');
   document.form2.regionmoteur.focus();
   return false;
  }
 if(document.form2.categoriemoteur.value == '') {
   alert('Veuillez entrer votre catégorie!');
   document.form2.categoriemoteur.focus();
   return false;
  }
}
//-->
</script> 
<style type="text/css">
<!--
.Style7 {
	font-size: 16px;
	font-weight: bold;
	color: #371011;
}
.Style8 {
	color: #371011;
	font-weight: bold;
}
-->
</style>
</head> 
 
<body>
<br><br><br>


<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" width="800" align="center">
<TR valign="middle">
 <TD width="35"></TD>
 <TD height="40"><img src="../images/logo.png" border="0"  height="100" width="632"></TD>
 <TD align="right"><font class="lienh">Les Petites Annonces Fétichistes</font></TD>
 <TD width="35"></TD>
</TR>
</table>

<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" width="800" align="center">
<TR>
 <TD class="c01"></TD>
 <TD class="ce"></TD>
 <TD class="cee1"></TD>
 <TD class="cee"></TD>
 <TD class="c02"></TD>
</TR>
</table>

<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" width="800" align="center">
<TR valign="top">
 <TD class="alo"></TD>
 <TD class="ace1"><span class="Style1 Style7">Rechercher un mot clé</span></TD>
 <TD class="aace1"></TD>
<TD class="ace2"><img src="../images/puce.png" border="0" valign="middle"><a href="../index.html" class="ace2liens">INDEX</a><img src="../images/trans.gif" height="1" width="40" border="0"><img src="../images/puce.png" border="0" valign="middle"><a href="../depose-annonce.php"  class="ace2liens">DEPOSER UNE ANNONCE</a><img src="../images/trans.gif" height="1" width="40" border="0"><img src="../images/puce.png" border="0" valign="middle"><a href="../aide.html"  class="ace2liens">AIDE</a><img src="../images/trans.gif" height="1" width="40" border="0"><img src="../images/puce.png" border="0" valign="middle"><a href="../contact.html"  class="ace2liens">CONTACT</a></TD>
 <TD class="ali"></TD>
</TR>
</table>

<form method="GET" name="form2" action="moteur.php" onSubmit='return verif_formulaire2()'>

<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" width="800" align="center">
<TR VALIGN="middle">
 <TD class="pp1"></TD>
 <TD class="pp2"><img src="../images/trans.gif" height="0" width="4" border="0"><input id="searchmoteur" name="searchmoteur" class="int" value='Que recherchez-vous ?' onFocus="javascript:this.value=''">
<img src="../images/trans.gif" height="0" width="27" border="0"><span class="Style8">R&eacute;gion:</span><img src="../images/trans.gif" height="0" width="10" border="0">
<select id="regionmoteur" name="regionmoteur"  class="int"> 

<option value='France' > Toute la France</option> 

<option value='Alsace' > Alsace</option> 

<option value='Aquitaine' > Aquitaine</option> 

<option value='Auvergne' > Auvergne</option> 

<option value='Basse-Normandie' > Basse Normandie</option> 

<option value='Bourgogne' > Bourgogne</option> 

<option value='Bretagne' > Bretagne</option> 

<option value='Centre' > Centre</option> 

<option value='Champagne-Ardenne' > Champagne Ardenne</option> 

<option value='Corse' > Corse</option> 

<option value='Franche-Comte' >Franche Comte</option> 

<option value='Haute-Normandie' >Haute Normandie</option> 

<option value='Ile-de-France' >Ile de France</option> 

<option value='Languedoc-Roussillon' >Languedoc Roussillon</option> 

<option value='Limousin' >Limousin</option> 

<option value='Lorraine' >Lorraine</option> 

<option value='Midi-Pyrenees' >Midi Pyrenees</option> 

<option value='Nord-Pas-de-Calais' >Nord Pas de Calais</option> 

<option value='Pays-de-la-Loire' >Pays de la Loire</option> 

<option value='Picardie' >Picardie</option> 

<option value='Poitou-Charentes' >Poitou Charentes</option> 

<option value='Provence-Alpes-Cote-d-Azur' >Provence Alpes Cote d Azur</option> 

<option value='Rhone-Alpes'>Rhone-Alpes</option></select> 

<img src="../images/trans.gif" height="0" width="30" border="0"><span class="Style8">Catégorie:</span><img src="../images/trans.gif" height="0" width="10" border="0">

<select id="categoriemoteur" name="categoriemoteur" class="int"> 

<optgroup label=Sous-Vêtements>

<option value="culotte"> Culotte/String</option>

<option value="Chaussette"> Chaussettes</option>

<option value="soutif"> Soutien-gorge</option>

<option value="collant"> Bas/collants</option>

<option value="nuisette"> Nuisette/Pyjama</option>

<option value="autre"> Autres</option>   </optgroup>

<optgroup label=Chaussures> 

<option value="talons"> Talons</option>

<option value="sport"> Sport</option> 

<option value="tongs"> Bottes/Bottines</option>

<option value="pantoufle"> Pantoufles</option>

<option value="autre"> Autres</option> </optgroup>

<optgroup label=Vêtements> 

<option value="tshirt"> T-shirt/Sweat</option>

<option value="pantalon"> Pantalons </option> 

<option value="pull"> Pulls</option>  

<option value="robe"> Jupes/Robes</option>  

<option value="chapeau"> Chapeaux</option>  

<option value="fourrure"> Fourrure </option> 

<option value="autre"> Autres</option> </optgroup> 

<optgroup label=Sex-toys> 

<option value="elle"> Pour elle</option> 

<option value="lui"> Pour lui</option>

<option value="fetish"> Fétichisme</option> </optgroup>

<optgroup label=Divers> 

<option value="accessoire"> Accessoires </option>

<option value="bijou"> Bijoux </option>

<option value="aliment"> Alimentaires </option>

<option value="magazine"> Magazines/Photos </option>

<option value="Autres"> Autres</optgroup> </select>
<input type='submit' value='' class="submit"></TD>
 <TD class="pp3"></TD>
</TR>
</table>
</form>




<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" width="800" align="center">
<TR valign="top">
 <TD class="lo"></TD>
 <TD class="rien">

Vous pouvez utiliser un mot-clé ou un code postal pour votre recherche</b><br><br> 



 
<?php


if($_GET['regionmoteur'] == true && $_GET['categoriemoteur'] == true)
{

$adminsup = 'novarible1';
$login = 'novariable2';
$adminvalide = 'novarible3';
$loginadmin = 'novarible4';

$nbsujet = 20;

if ($page ==""){$page = 1 ;}

$search1 = $_GET['searchmoteur'];
$search1 = strtr($search1,'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ','AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$search1 = str_replace("<", "", $search1);
$search1 = str_replace(">", "", $search1);
$search1 = str_replace("?", "", $search1);
$search1 = str_replace("!", "", $search1);
$search1 = str_replace(".", "", $search1);
$search1 = str_replace( array( "c\'","l\'","d\'"," mais "," ou "," et "," donc "," or "," ni "," car "," je "," il "," lui "," ils "," elle "," vous ",
" vos "," votre "," mes "," mien "," tien "," tiens "," tout "," toute "," toutes "," le "," la "," les "," nos ",
" alors "," au "," aucuns "," aussi "," autre "," avant "," avec "," avoir "," bon "," car "," ce ",
" cela "," ces "," ceux "," chaque "," ci "," comme "," comment "," dans "," des "," du "," dedans ",
" dehors "," depuis "," deux "," devrait "," doit "," donc "," dos "," droite "," debut "," elle ",
" elles "," en "," encore "," essai "," est "," et "," eu "," fait "," faites "," fois "," font ",
" force "," haut "," hors "," ici "," il "," ils "," juste "," la "," le "," les "," leur "," là ",
" ma "," maintenant "," mais "," mes "," mine "," moins "," mon "," mot "," meme "," ni "," nommes ",
" notre "," nous "," nouveaux "," ou "," où "," par "," parce "," parole "," pas "," personnes ",
" peut "," peu "," plupart "," pour "," pourquoi "," quand "," que "," quel "," quelle ",
" quelles "," quels "," qui "," sa "," sans "," ses "," seulement "," si "," sien "," son ",
" sont "," sous "," soyez "," sujet "," sur "," ta "," tandis "," tellement "," tels "," tes "," ton ",
" tous "," tout "," trop "," tres "," tu "," valeur "," voie "," voient "," vont "," votre "," vous ",
" vu "," ça "," etaient "," etat "," etions "," ete "," etre "," un "," deux "," trois "," quatre "," cinq ",
" six "," sept "," huit "," neuf "," dix "," avec "," chez "," par "," dans "," des "," en "," de "," une ",
" votre "," meilleurs "," entre "," entres "," depuis "," alors "," ne "," pas "," du "," meme ",
" ou "," nom "," seuls "," acceptes "," ayant "," vos "," votre "," mes "," mien "," mien "," tien "," tiens "," tout "," toute "," toutes ",
" que "," quoi "," qui "," comment "," peu "," peut "," pis "," puis "," pas "," chaque "," chacun "," chacune ",
" son "," ses "," au "," aux "," se "," sur "," ce "," ceux "," cette "," ca "," ci "," ceci "," cela ",
" aussi "," pour "," petit "," grand "," moyen "," large "," haut "," quelque "," cependant "," bas "," milieu "," droite ",
" gauche "," dit "," etre "," leur "," leurs "," plus "," moin "," moins ", " neanmoins "," toutefois "," bien "," mieux "," vite "," mal "," debout ",
" plutot "," aussi "," ainsi "," comme "," ensemble "," comment "," rien "," aussi "," assez "," autant "," beaucoup "," moins "," peu "," tres ",
" fort "," tant "," davantage "," environ "," plus "," hier "," aujourd'hui "," alors "," deja "," apres "," quand "," toujours "," enfin ",
" soudain "," depuis "," demain "," dorenavant "," longtemps "," ailleurs "," autour "," dedans "," derriere "," dessus "," dessous ",
" partout "," soit "," volontiers "," assurement "," certainement "," vraiment "," non "," aucun "," guere "," jamais "," probablement ",
" sans "," doute "," apparemment "," tellement "," trop "," maintenant "," Locutions "," Adverbiales "," revanche "," sans "," cesse ",
" present "," general "," contre "," dessus "," ailleurs "," es "," est "," sont "," son "," va "," suis "," ai "," viens "), " ", $search1 );
$search1 = preg_replace('#(\s|\b)[\w]{1,2}\s#i', ' ', $search1);
$search1 = preg_replace('/\s\s+/', ' ', $search1);
$search1 = preg_replace('/([^.a-z0-9]+)/i', ' ', $search1);
$search1 = trim(rtrim(strtolower($search1)));
$search1 = preg_replace('/([^.a-z0-9]+)/i', '|', $search1);


if ($search1 == false || $search1 == "que|recherchez|vous")
{$search1 = "0";}

$searchfin=".*($search1).*";

$cat = $_GET['categoriemoteur'];

//Si on selection tout la france on continu

if ($regionmoteur = "France")

{

$tabRegion = array("Alsace","Aquitaine","Auvergne","Basse-Normandie","Bourgogne","Bretagne","Centre","Champagne-Ardenne","Corse","Franche-Comte","Haute-Normandie","Ile-de-France","Languedoc-Roussillon","Limousin","Lorraine","Midi-Pyrenees","Nord-Pas-de-Calais","Pays-de-la-Loire","Picardie","Poitou-Charentes","Provence-Alpes-Cote-d-Azur","Rhone-Alpes",);

$i=0;
$compteur=0;
$tableau = array();

  // début de la boucle avec foreach
foreach ($tabRegion as $value) {
$dir2 = opendir("../region/".$value."/".$cat."/annonce/");
while (false !== ($File = readdir($dir2))) {
if(eregi($searchfin,$File))
  {
   $tableau[] =  '../region/'.$value.'/'.$cat.'/annonce/'.$File.'';
                           $compteur++;   $i++;  
  } 
                                            }

} //fin de la boucle


closedir($dir2);
rsort($tableau);


?>

<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0"  width="750">
<TR valign="top">
<td>
<?php

echo 'Résulats pour la catégorie : '.$_GET['categoriemoteur'].' dans '.$_GET['regionmoteur'].'<br><br>';


?>

</td><td align="right">

<?php

echo ''.$i.' Annonce(s) <a href="moteur-prix.php?regionmoteur='.$_GET['regionmoteur'].'&categoriemoteur='.$_GET['categoriemoteur'].'&searchmoteur='.$_GET['searchmoteur'].'&page=1"  class="lien">Trier par prix</a>';


?>

</td></tr></table><br><br>

<?php


$Max = count($tableau);

$pagemin = $page*$nbsujet-$nbsujet;
$nbpage = $Max/$nbsujet;
$nbpage = ceil($nbpage);
   if ($page == $nbpage) {$pagemax = $Max;}
           else {$pagemax = $page*$nbsujet;}

if ($Max != 0)
{
for($i = $pagemin; $i != $pagemax; $i++)
{
include "$tableau[$i]"; 
}
} 


if ($compteur == 0) {
echo '<table cellpadding="0" cellspacing="0" width="750" align="center" border="0"><TR><TD><br><br><font style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:13px; color:#d77d73"><b>Aucun r&eacute;sultat n\'a &eacute;t&eacute; trouv&eacute; &agrave; votre requ&ecirc;te "',$_GET['searchmoteur'],'"</b></font><br><br><font style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:13px; color:#454545"> Vérifier l\'orthographe de votre ou de vos mots-clés. <br>Utiliser un ou plusieurs mots-clés différents (un seul peut suffire).<br>Elargir votre recherche avec un ou des mots-clés plus génériques. <br>Essayer avec moins de mots-clés<br></font></td></tr></table>';
}

$nbpage = $Max/$nbsujet;
$nbpage = ceil($nbpage);
$nbpage2 = $nbpage +1 ;


echo '<div id="pagination">';

for ($i = 1 ; $i <= $nbpage ; $i++) {
  if ($i < ($page-10) )
    $i = $page - 10;
        if ($i >= $page + 10 AND $i <= $nbpage - 10)
                echo "...";
  if ($i > ($page+4) )
    $i = $nbpage ;
  if ($i == $page )
    echo '<font class="liens02"><b>['.$i.']</b></font>&nbsp;&nbsp;';
  else
  echo '<a href=moteur.php?regionmoteur='.$_GET['regionmoteur'].'&categoriemoteur='.$_GET['categoriemoteur'].'&searchmoteur='.$search1.'&page='.$i.' class="liens02"><b>'.$i.'</b></a>&nbsp;&nbsp;';
 }


}

// Si la france n est pas selectionner on change.

else

{

if ($search1 == false || $search1 == "que|recherchez|vous")
{$search1 = "0";}

$searchfin=".*($search1).*";

$dir2 = opendir('../region/'.$_GET['regionmoteur'].'/'.$_GET['categoriemoteur'].'/annonce/');
$tableau = array();
$i=0;
$getpages=0;
while (false !== ($File = readdir($dir2))) {

if(eregi($searchfin,$File))
  { $getpages++;
   $tableau[] =  '../region/'.$_GET['regionmoteur'].'/'.$_GET['categoriemoteur'].'/annonce/'.$File.'';
$i++;
                                  }

                                   }

?>

<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0"  width="750">
<TR valign="top">
<td>
<?php

echo 'Résulats pour la cétagorie : '.$_GET['categoriemoteur'].' dans '.$_GET['regionmoteur'].'<br><br>';


?>

</td><td align="right">

<?php

echo ''.$i.' Annonce(s) <a href="moteur-prix.php?regionmoteur='.$_GET['regionmoteur'].'&categoriemoteur='.$_GET['categoriemoteur'].'&searchmoteur='.$search1.'&page=1"  class="lien">Trier par prix</a>';


?>

</td></tr></table><br><br>

<?php


if ($getpages == 0) {
echo '
<table cellpadding="0" cellspacing="0" width="750" align="center" border="0">
<TR>
  <TD><br><br><font style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:13px; color:#d77d73"><b>Aucun r&eacute;sultat n\'a &eacute;t&eacute; trouv&eacute; &agrave; votre requ&ecirc;te "',$_GET['searchmoteur'],'"</b></font><br><br><font style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:13px; color:#454545"> Vérifier l\'orthographe de votre ou de vos mots-clés. <br>Utiliser un ou plusieurs mots-clés différents (un seul peut suffire).<br>Elargir votre recherche avec un ou des mots-clés plus génériques. <br>Essayer avec moins de mots-clés<br></font></td></tr></table>';

}


closedir($dir2);
rsort($tableau);

$Max = count($tableau);
$pagemin = $page*$nbsujet-$nbsujet;
$nbpage = $Max/$nbsujet;
$nbpage = ceil($nbpage);
   if ($page == $nbpage) {$pagemax = $Max;}
           else {$pagemax = $page*$nbsujet;}

 if ($Max != 0){
for($i = $pagemin; $i != $pagemax; $i++){
                                include "$tableau[$i]";

                                        }
		     }

echo '<p>';


$nbpage = $Max/$nbsujet;
$nbpage = ceil($nbpage);
$nbpage2 = $nbpage +1 ;

for ($i = 1 ; $i <= $nbpage ; $i++) {
  if ($i < ($page-10) )
    $i = $page - 10;
        if ($i >= $page + 10 AND $i <= $nbpage - 10)
                echo "...";
  if ($i > ($page+4) )
    $i = $nbpage ;
  if ($i == $page )
    echo '<font class="liens02"><b>['.$i.']</b></font>&nbsp;&nbsp;';
  else
  echo '<a href=moteur.php?regionmoteur='.$_GET['regionmoteur'].'&categoriemoteur='.$_GET['categoriemoteur'].'&searchmoteur='.$search1.'&page='.$i.' class="liens02"><b>'.$i.'</b></a>&nbsp;&nbsp;';
 }


}





// si appel à la page = rien
}
else

{
}

?>







</p>

</TD>
 <TD class="li"></TD>
</TR>
</TR>
</table>



<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" width="800" align="center">
<TR  valign="top">
 <TD class="c03"></TD>
 <TD class="ce2"></TD>
 <TD class="c04"></TD>
</TR>
</TABLE>

<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" width="800" align="center">
<TR valign="top">
 <TD class="lo1"></TD>
 <TD class="ce3"><img src="../images/trans.gif" height="20" width="2" border="0"><FONT class="about">Plan du Site </font><br>
     <img src="../images/trans.gif" height="15" width="2" border="0"><li><a href="../administration.html" class="lien">Administration</a><br><li><a href="../contact.html" class="lien">Contactez-nous</a><br><li><a href="../aide.html" class="lien">Aide</a><br><li><a href="../#" class="lien">Qui sommes nous ?</a><br><li><a href="../depose-annonce.php" class="lien">Déposer une annonce</a></TD>
 <TD class="ce9"><p><img src="images/trans.gif" height="20" width="2" border="0"><FONT class="about">Partenaires</font><br>
       <img src="images/trans.gif" height="15" width="2" border="0"></p>
   <li><a href="partenaire.html" class="lien">Devenez partenaire ! </a></TD>
 <TD class="ce33"></TD>
 <TD class="ce99"><img src="../images/trans.gif" height="10" width="10" border="0"><br>
 2012 © Tous droits réservés LingeriePortee.fr </TD>
 <TD class="li1"></TD>
</TR>
</TABLE>

<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" width="800" align="center">
<TR>
 <TD class="cb1"></TD>
 <TD class="ce4"></TD>
 <TD class="cb2"></TD>
</TR>


</TABLE> 




<br><br><br>


</body>
</html>



Merci Moogli

Dipou

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

13 déc. 2012, 21:15

1/ déja dit la condition if($regionmoteur = "France") sert à rien, Il s'agit d'une affectation qui ne peux pas échouer donc le test est toujours validé.
je pense que c'est a remplacer par if (!empty($_GET['regionmoteur']) && $_GET['regionmoteur'] == "France")
2/ if($_GET['regionmoteur'] == true && $_GET['categoriemoteur'] == true)
Ce test aussi est inutile, ce sont des valeur de formulaire pas de boolean.
si, comme je le pense, le but est de test l'existence des indexs il faut utiliser isset ou empty if(!empty($_GET['regionmoteur']) && !empty($_GET['categoriemoteur'] ))


Je n'ai pas fait le tour je vais pas éplucher 600 ligne de code.


Il faut commencer par voir ce que fait chaque partie du code petit a petit pour te l'approprier.

Je pense que tu gagnerais en compétence et en facilité si tu re fait cette page seul de zéro ;)

@+
Il en faut peu pour être heureux ......

Eléphanteau du PHP | 26 Messages

14 déc. 2012, 19:28

J'ai modifié pas mal de choses déjà, sans m'y connaitre vraiment, mais la je bloque pour cette chose là. Je comprends pas pourquoi il me renvoie une erreur alors que pour la france ça fonctionne, si quelqu'un peut m'aider, je ne sais plus quoi faire :priere:

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

14 déc. 2012, 19:51

Cela ne fonctionne que pour la France (avec le code fournie) ajoute le = (la comparaison c'est un double égale).

@+
Il en faut peu pour être heureux ......

Eléphanteau du PHP | 26 Messages

14 déc. 2012, 20:22

j'ai modifié et j'ai supprimé cette partie du code que j'avais rajouté
//Selection toutes catégories

if ($categoriemoteur = "Toutes")

{

$cat = array("culotte","Chaussette","soutif","collant","nuisette","autre","talons","sport","tongs","pantoufle","autre","tshirt","pantalon","pull","robe","chapeau","fourrure","autre","elle","lui","fetish","accessoire","bijou","aliment","Autres","magazine");

$i=0;
$compteur=0;
$tableau = array();


}
et l'option "toutes les categories" du champ, et ça refonctionne. Alors, je me dis que l'erreur est forcément dans ce bout de code, je comprend pas pourquoi

Eléphanteau du PHP | 26 Messages

15 déc. 2012, 18:45

un petit up à l'heure de pointe :priere: