[Résolu] PHPmyannu, problème d'url rewriting !

vin-moi

WRInaute occasionnel
Bonjours à tous ! je suis devant un problème d'url rewriting avec phpmyannu ! bon, je l'ai rewrité parfaitement en suivant un tutorial (que j'ai un peu modifié).

le problème se pose lorsque que j'ai une catégorie comportant plusieurs page, les lien pour allez aux differente page ne sont pas rewrité !

http://www.annuaires-web.com/index-334- ... ismes.html

ici, c'est totalement bien rewrité.

par contre, le mien : http://www.depannetonpc.dafun.com/index1-9.html

etant donné mes conaissances limitées en php, j'aimerais votre sympathique aide devant ce petit problème !

voici le bout de code pour les liens vers les differentes page :
for ($i=1;$i<$nb_pages;$i++)
{
if ($i != $page)
echo "<a href=\"index1.php?cat_id=$cat_id&page=$i\">$i</a>";
else
echo "$i";
echo " - ";
}
//on affiche le dernier numero de page (sans tiret apres)
if ($i == $page)
echo $i;
else
echo "<a href=\"index1.php?cat_id=$cat_id&page=$i\">$i</a>";

et mon .htaccess actuel :
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^index1-([0-9]+)\.html$ /index1.php?cat_id=$1
RewriteRule ^index1-([0-9]+)-([0-9]+)\.html$ index1.php?cat_id=$1&page=$2
RewriteRule ^goto-([0-9]+)\.html$ /goto.php?id=$1

que faut t'il modifier / ajouter dans ces deux portions de code pour faire ca ?

par la même occasion , j'ai vu sur l'annuaire que dans les lien, il y avait les titre des catégories ! si quelqu'un de charitable peut m'expliquer comment faire ca serai sympas mais c'est pas le principal !

merci de votre aide ![/dico]
 

vin-moi

WRInaute occasionnel
Oubliez ! j'ai merdé au niveau du htaccess !

par contre je veu bien le tuyaux pour le nom des catégorie dans l'url des pages !
 

vin-moi

WRInaute occasionnel
voila , c'est fait ;)

pour ceux ue ca interesse, le tuto vien de phpmyannu.com

voila l'erreur :

Options +FollowSymlinks
RewriteEngine on
RewriteRule ^index1-([0-9]+)\.html$ /index1.php?cat_id=$1
RewriteRule ^index1-([0-9]+)-([0-9]+)\.html$ /index1.php?cat_id=$1&page=$2
RewriteRule ^goto-([0-9]+)\.html$ /goto.php?id=$1
 

JeromeRookie

WRInaute occasionnel
Non, ce script permet de mettre le nom de la catégorie dans la balise TITRE mais pas dans l'url pour avoir des pages du type : nom_catégorie.html
je recherche également la réponse à cette question...

Vin-moi, as-tu trouvé ?
 

JeromeRookie

WRInaute occasionnel
il suffit dans le fichier index.php de retraiter le nom de l'url à ajouter...
moi j'ai bidouillé et ca marche en faisant ceci :
Code:
while ($resultat = mysql_fetch_array($res_scat,MYSQL_ASSOC))
								{
									if ($i%2 == 0) //colonne de gauche
										echo "<tr>\n";
									echo "<td width=\"50%\" align=\"center\" height=30>\n";
									$lien=$resultat["cat_name"];
									$lien = strtolower($lien); 
									$lien = ereg_replace(" ", "_", $lien);
									$lien = ereg_replace("é", "e", $lien);
									$lien = ereg_replace("è", "e", $lien);
									$lien = ereg_replace("ë", "e", $lien);
									$lien = ereg_replace("ê", "e", $lien);
									$lien = ereg_replace("à", "a", $lien);
									$lien = ereg_replace("'", "_", $lien);
									?>
									<img src="img/dossier.gif" border=0>
									<a href="<? echo $lien; ?>-<? echo $resultat["id"]; ?>.html" class="link_scat_other_annuaire"><?php echo htmlspecialchars($resultat["cat_name"]); ?></a>
									 <span class="nb_scat_other_annuaire">(<?php echo get_nbsites($resultat["id"]); ?>)</span>
									<?php
									$i++;
								}

puis, il faut bien sur actualiser ton .htacesse en fonction.
Jerome
 

e-atlantide

WRInaute occasionnel
Merci.

J'ai mis dans le fichier .htaccess

RewriteEngine on
RewriteRule ^cat-(.*)\.htm index.php?cat_id=$1 [L]
RewriteRule ^cat-(.*)-(.*)\.htm index.php?cat_id=$1&page=$2 [L]
RewriteRule ^submit_site-(.*)\.htm$ submit_site.php?id_cat=$1 [L]
RewriteRule ^nouveautes.htm$ nouveautes.php [L]
RewriteRule ^gotoframe-(.*)\.htm gotoframe.php?id=$1 [L]

Mais cela ne fonctionne pas correctement. Une idée ?
 

JeromeRookie

WRInaute occasionnel
Voici mon .htaccess

Code:
Options +FollowSymlinks
RewriteEngine on

RewriteRule ^art-([0-9]+)\.html$ index.php?cat_id=$1
RewriteRule ^art-([0-9]+)-([0-9]+)\.html$ index.php?cat_id=$1&page=$2
RewriteRule ^goto-([0-9]+)\.html$ goto.php?id=$1

RewriteRule ^([a-zA-Z0-9\_]+)-([0-9]+)\.html$ index.php?cat_id=$2
RewriteRule ^([a-zA-Z0-9\_]+)-([0-9]+)-([0-9]+)\.html$ index.php?cat_id=$2&page=$3

RewriteRule ^top_recherche_([0-9]+)\.html$   top_recherches.php?page=$1 [QSA,L]

RewriteRule ^([a-zA-Z0-9\_\-]+)\.html$   search.php?toprecherche=$1 [QSA,L]
 

e-atlantide

WRInaute occasionnel
Merci pour cette aide précieuse.
Cela fonctionne correctement maintenant.

Par contre, je galère depuis un moment sur la fonction submit_site.
J'ai modifié le fichier haut.php de cette façon :
<a href="<? echo "ajout";?>-<?php echo isset ($cat_id) ? $cat_id : ''; ?>.htm" class="top_link_annuaire">
<?php
if (!empty($cat_id))
{
?>
Proposer un site dans cette catégorie</a>
<?php
}
else //l'id de la la categorie est vide
{
?>
Proposer un site</a>
<?php
}
?>
J'ai bien un lien correct qui s'affiche (par exemple ajout-40.htm).

Au niveau du fichier .htaccess, j'ai ajouté la ligne suivante pour la réécriture :
RewriteRule ^ajout-([0-9]+)\.htm$ /annuaire/submit_site.php?id_cat=$1 [L]

Je ne trouve pas mon erreur ! Lorsque je clique sur lien "Proposer un site", la même page s'affiche (comme si j'actualisais la page en cours).

Si vous avez une idée, je suis preneur !

Michaël
 

e-atlantide

WRInaute occasionnel
RewriteRule ^ajout-([0-9]+)\.htm$ /annuaire/submit_site.php?id_cat=$1 [L]
Problème résolu ! J'avais ajouté cette ligne à la fin du fichier et maintenant elle se trouve au début : elle n'était pas prise en compte.

Il me reste un dernier point à régler. Je pense qu'un expert php peut le résoudre rapidement.
Il s'agit du code par défaut lorsqu'il y plusieurs pages pour une catégorie :
<?php
for ($i=1;$i<$nb_pages;$i++)
{
if ($i != $page)
echo "<a href=\"index.php?cat_id=$cat_id&page=$i\">$i</a>";
else
echo "$i";
echo " - ";
}
//on affiche le dernier numero de page (sans tiret apres)
if ($i == $page)
echo $i;
else
echo "<a href=\"index.php?cat_id=$cat_id&page=$i\">$i</a>";
?>
Je souhaiterais avoir ce résultat :
h**p://www.e-voyageur.com/annuaire/egypte-42-1.htm (pour la page 1, egypte étant le nom de la sous-catégorie)
h**p://www.e-voyageur.com/annuaire/egypte-42-2.htm (pour la page 2)

Michaël :wink:
 

e-atlantide

WRInaute occasionnel
La variable $lien n'est pas interprétée : h**p://www.e-voyageur.com/annuaire/-42-2.htm
La sous-catégorie ne s’affiche pas.
Je pense que je n’ai pas correctement positionné $lien dans le code.
 

ajvideo

Nouveau WRInaute
htaccess

Hello e-atlantide

pourrais tu afficher ton fichier htaccess.
ca m'aiderai bien car je galere
:cry:
Merci
Mike
 

e-atlantide

WRInaute occasionnel
Tu trouveras ci-dessous le contenu de mon fichier .htaccess qui se trouve dans le répertoire de myphpannuaire.

RewriteEngine on
RewriteRule ^ajout-site.htm$ /annuaire/submit_site.php [L]
RewriteRule ^ajout-site-([0-9]+)\.htm$ /annuaire/submit_site.php?id_cat=$1 [L]
RewriteRule ^(.*)-([0-9]+)-([0-9]+)\.htm$ /annuaire/index.php?cat_id=$2&page=$3 [L]
RewriteRule ^(.*)-([0-9]+)\.htm$ /annuaire/index.php?cat_id=$2 [L]

J'espère que cela va t'aider.

Bon courage :wink:
 

magic

WRInaute discret
slt

sur cette page rewrité :

http://www.netissimmo.net/portails-automatiques-117.htm

si je change l'url en :

h**p://www.netissimmo.net/portails-PROUT-automatiques-117.htm

j'arrive sur la meme page ... c'est pas dangereux ?
duplicate content ?

existe t il une modification a faire pour que cela ne puisse pas se produire et renvoyer vers une 404 ?

j'en profite pour poser une autre question

est il préjudiciable de mettre des catégories avec accents et que ce meme accents ce repercute dans l'url rewrité ?
cela a une incidence ? est il preferable d'oublier les accents ?
ex :
http://www.le-site-qui-dechire.com/mapage-rewrité-117.htm
http://www.le-site-qui-dechire.com/mapa ... te-117.htm

Merci
 

XenonDelee

WRInaute impliqué
magic a dit:
slt

si je change l'url en :

h**p://www.netissimmo.net/portails-PROUT-automatiques-117.htm

... c'est pas dangereux ?

SI ! si tu mets un briquet devant ça explose :mrgreen:

Non sérieusement, je ne pense pas ... vu que c'est toi qui fais ton annuaire et donc qui crée l'architecture du site ...
 

magic

WRInaute discret
alors si je link vers cette page pour te nuire cela ne risque pas de provoquer du duplicate content pour GG ?
 

magic

WRInaute discret
je ne pense pas que celui ou ceux qui ont ce type d'idee viennent l'annoncer ici meme ... donc si quelqu'un veut s'en prendre a ton site il ne te previendra pas avant ... mais bon ca resolu pas le souci je pense qu'il doit y avoir une parade ... un spé PHP Apache pourrait il nous eclairer ?
 

XenonDelee

WRInaute impliqué
magic a dit:
voila g edité mon post pour modifier mon exemple

Ne t'inquiète pas je plaisantais !

Je pense bien que tu ne va pas le faire ou alors que si telle était ton intention tu ne l'aurais pas crié sur les toits :lol:

Merci en tout cas de l'avoir fait ....

A+
 

xTonRx

Nouveau WRInaute
hello
kelk1 peut il mexpliker la logik pour mettre en place des titres dynamik ds les URL (php et surtout .htacess)


par exemple je voudrais faire ca:


www.site.com/photo/mickael-jackson-1.html

sachant ke g une base mysql avec 2 tables:
la 1ERE : ou chak artist a 1 id : ex mickael jackson : id=1
la 2ND : correspond a tte les photos, toutes les photos seront indicé 1 pour mickael jackson, 2 pour bon jovi etc.....

donc en gros mes parametres normaux pour le moment sont :
photos.php?id=1&tof=3 ( 3 = la troisierme photo de mickael jackson)

je voudrais rewrité ca
ca marche nikel qd je fais un truc normal style:

RewriteRule ^photos-([0-9]+)-([0-9]+)\.html$ photos.php?rub=$1&tof=$2

mais mainteant jaimerai mettre le nom de lartiste dedans à la place du $1 et sachant ke cette variable doit forcemment etre egal à 1 nombre, car tt est indexé avec des nombres
comment faire?

vu que ds le nom de lartiste, les espace st comblés par des tirets, comment se fait la difference ds le htaccess avec les variables $1 et $ 2 ?
 

cloacking

WRInaute impliqué
Je souhaite également faire cette modification seulement je suis chez OVH et je m'emmelle les pinceaux même en essaynt d'écouter leur conseil
-http://guides.ovh.com/HtaccessModRewrite/

Quelqu'un aurait une idée de la modif a apporter pour OVH ?
Merci
 

Discussions similaires

Haut