PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 23-12-2013 03:14:50

rimie
Membre
Inscription : 17-11-2011
Messages : 50

Pagination et mod_rewrite

Bonjour,

Je code un moteur de recherche, avec une pagination, deja j'ai un fichier htaccess comportant les regles du mod_rewrite, le probleme existe en mode pagination:


<?php
if(isset($_POST['submit']))
{
    $search = $_POST['search'];
   
    $findWord = '?search='.$search;    
} else {
    $findWord = '';
}


?>
<form action="<?php echo 'Search.html'.$findWord; ?>" method='POST'>
<center>
<h1>My Search Engine</h1>
<input type='text' size='20' name='search'></br></br>
<input type='submit' name='submit' value='send' ></br></br></br>
</center>
</form>

<?php
if(IsSet($_POST['submit'])){
   
    require_once 'Admins/search.php';
}

?>
 
 

J'obtiens un resultat en bas de page avec url de pagination est comme suite:


http://www.site.com/Search.html?search=test&start=2
 

le resultat de cette url est la page du formulaire par defaut

fichier htaccess:


Options +FollowSymlinks
RewriteEngine on
RewriteRule ^(\w+)\.html$ index.php?rub=$1 [L]
RewriteRule ^(\w+)/(\w+)\.html$ index.php?rub=$1&srub=$2 [L]
 

comment resoudre ce probleme en gardant le format normal de l'url, type:


http://www.site.com/Search.html?search=test&start=2
 

merci a vous

Hors ligne

#2 24-12-2013 19:45:20

Jc
Membre
Lieu : Zillisheim - Alsace
Inscription : 15-04-2010
Messages : 1 629
Site Web

Re : Pagination et mod_rewrite

Bonjour,

Pour pouvoir répondre faudrait-il que l'on puisse comprendre votre problème. Pour cela faudrait-il que vous nous expliquiez le résultat que vous souhaiteriez obtenir, car montrer ce que vous avez et obtenez ne suffit pas..., si vous y arrivez, vous êtes fort^^


POO PHP+Ajax en MVC avec PDO et Bases de données épaisses  : What else?

Hors ligne

#3 25-12-2013 02:24:05

rimie
Membre
Inscription : 17-11-2011
Messages : 50

Re : Pagination et mod_rewrite

merci Jc de votre reponse, enfin j'ai un fichier htaccess, qui a des regles, ces regles empechent l'affichage de la pagination du moteur de recherche, par exemple:

si une personne cherche un terme "toto tata", le code execute la cherche et affiche un resultat, par exemple 5 par page, alors la 2eme page serait un lien comme ca:

www.site.com/Search.html?search=toto+tata&start=2

alors dans les regles j'ai ca:


Options +FollowSymlinks
RewriteEngine on
RewriteRule ^(\w+)\.html$ index.php?rub=$1 [L]
RewriteRule ^(\w+)/(\w+)\.html$ index.php?rub=$1&srub=$2 [L]
 

Quand je clique pour aller a la 2eme page, il affiche une erreur 404, parce que mes liens sont comme ca:

www.site.com/niveau1/niveau2/niveau3....../niveauN.html

Merci a vous

Hors ligne

#4 26-12-2013 17:35:02

Jc
Membre
Lieu : Zillisheim - Alsace
Inscription : 15-04-2010
Messages : 1 629
Site Web

Re : Pagination et mod_rewrite

Bonjour,

Que voulez-vous dire par là?

Ensuite je ne suis toujours pas certain de vous comprendre. En effet il semble qu'il y ait 2 cas de figure.

1) Votre rewrite interfère avec votre moteur de recherche
La solution est que votre moteur de recherche passe par search.php?...  au lieu de search.html?... ainsi pas d'interférence avec votre rewrite

2) Vous cherchez à rewriter les requêtes de votre moteur de recherche.
Il n'y a aucune pertinence dans cette démarche car le rewrite sert a référencer vos pages cibles ou vos pages de conversions qu'elles soient obtenues statiquement ou dynamiquement. Or une requête est dynamique et temporaire pourquoi la persister? cela va créér un overhead de traitement inutile au niveau de votre serveur apache.

Bonnes fêtes.


POO PHP+Ajax en MVC avec PDO et Bases de données épaisses  : What else?

Hors ligne

Pied de page des forums