Page 1 sur 1

code php piti soucis

Posté : 07 mai 2008, 21:20
par patrick777
Bonjour,

Encore un petit soucis, je ne sais pas si ça vient de ce code ou du prochain;
cette page s'appelle rotisserie.php et a le code suivant qui redirige vers rotisserie-livraison.php

rotisserie.php indique le nom des villes et cré des liens cliquables vers la dite ville, par exemple, paris, marseille, nice, grenoble...
la page de lien devient alors: /rotisserie-livraison-paris.html
mais le nom de la ville quand je fais une requete sur la page devient rotisserie-paris au lieu de paris.
la ville s'appelant maintenant rotisserie paris au lieu de paris, ce qui est assez embetant, en plus je n'ai pas de retour sur ma base de donnees car je n'ai pas de villes s'appellant rotisserie-paris, alors je ne peux pas sortir mes adresses.

Voici le code de la page rotisserie.php

<?php  
$departement = str_replace("-"," ",$_GET['departement']);   

$sql = ("SELECT DISTINCT ville FROM rotisserie WHERE departement='$departement' ORDER BY nom");  
$result = mysql_query($sql);  

while ($row = mysql_fetch_assoc($result)) {  
echo '<ul>';  
echo '<li><a href="rotisserie-livraison-'.preg_replace("/ /","-",$row['ville']).'.html">'.$row['ville'].'</li>'; 
echo '</ul>';  
}  
?>


code de la page rotisserie-livraison.php

balise h1, bleblablablabla
<?php echo $_GET['ville']; ?>
là, ca me met donc rotisserie-paris au lieu de paris


<?php  
$ville = str_replace("-"," ",$_GET['ville']);

$sql = ("SELECT nom,adresse,code_postal,ville,poemes FROM livraison_fleurs WHERE ville='$ville' ORDER BY nom");  
$result = mysql_query($sql);  

while ($row = mysql_fetch_assoc($result)) {  
echo '<ul>';  
echo '<li>'.$row['nom'].'</li>';  
echo '<li>'.$row['adresse'].'</li>';  
echo '<li>'.$row['code_postal'].'</li>';  
echo '<li>'.$row['ville'].'</li>';  
echo '</ul>';  
}  
?>
et la, b'en ça me met rien du tout, normalement, je devrais avoir la liste de mes rotisseries.

Je sais pas si j'ai été bien clair !

Mais en tout cas, je galere,si quelqu'un avait une tite idée, mirci beaucoup.

Patrick




Mon fichier .htaccess

RewriteEngine on
RewriteRule rotisserie-(.*)\.html$ /rotisserie.php?departement=$1 [L]
RewriteRule rotisserie-(.*)\.html$ /rotisserie.php?ville=$1 [L]

Re: code php piti soucis

Posté : 07 mai 2008, 21:59
par SpintroniK

echo '<li><a href="rotisserie-livraison-'.preg_replace("/ /","-",$row['ville']).'.html">'.$row['ville'].'</li>'; 
echo '</ul>';  
Pourquoi ne pas utiliser un str_replace ?
code de la page rotisserie-livraison.php

balise h1, bleblablablabla
<?php echo $_GET['ville']; ?>
là, ca me met donc rotisserie-paris au lieu de paris
Donc il faudrait faire ça je pense ... :
 $ville = $_GET['ville']; // Avec quelques vérifications supplémentaires si besoin ?
 $ville = str_replace('rotisserie-','',$ville);
Comme ça tu as paris au lieu de rotisserie-paris ...

Posté : 07 mai 2008, 22:58
par patrick777
En fait je me suis un peu trompé,

ça ne me met pas rotisserie-paris, mais livraison-paris.

alors, le code que tu m'as donné, je le met dans rotisserie.php ? a la place de mon autre partie de code? ou dans la page rotisserie-livraison.php,

je suis désolé, mais je ne suis pas tres fort. et dans ce cas, faudrait il que je change mon .htaccess?

Patrick

Posté : 08 mai 2008, 23:47
par b.jerome
Est-ce que tu es sur de ton htaccess ?

Code : Tout sélectionner

RewriteEngine on RewriteRule rotisserie-(.*)\.html$ /rotisserie.php?departement=$1 [L] RewriteRule rotisserie-(.*)\.html$ /rotisserie.php?ville=$1 [L]
De cette maniére je pense que ca résoudrais ton soucis

Code : Tout sélectionner

RewriteEngine on RewriteRule rotisserie-livraison-(.*)\.html$ /rotisserie.php?ville=$1 [L]

Posté : 09 mai 2008, 20:16
par patrick777
non, je ne suis pas sur de mon .htaccess,
je la premiere ligne marche mais la deuxieme, j'ai essayé comme ça mais avec le resultat décrit.

Si je met ton code, ça ne me trouve pas la page des villes rotisserie.php

Je pense que je veux mettre au lieu de rotisserie-livraison.php, poulet.php, donc j'ai cree une page poulet.php et le code php dans rotisserie.php, j'ai mis:
<?php  
$departement = str_replace("-"," ",$_GET['departement']);

$sql = ("SELECT DISTINCT ville FROM rotisserie WHERE departement='$departement' ORDER BY nom");  
$result = mysql_query($sql);  

while ($row = mysql_fetch_assoc($result)) {  
echo '<ul>';  
echo '<li><a href="poulet-'.preg_replace("/ /","-",$row['ville']).'.html">'.$row['ville'].'</li>'; 
echo '</ul>';  
}  
?> 
mon .htaccess, je sais pas quoi mettre, si je met rien, la page ne s'affiche pas, et si j'essaie de mettre

Code : Tout sélectionner

RewriteEngine on RewriteRule rotisserie-(.*)\.html$ /rotisserie.php?departement=$1 [L] RewriteRule poulet-(.*)\.html$ /poulet.php?ville=$1 [L]
ça ne me trouve pas la page non plus,

alors est ce que je dois changer le code php, et ou ça, sur quelle page? ou le htaccess, je sais pas, je
suis completement largué.

Patrick[/code]


Je viens de changer ma page rotisserie-livraison.php en livraison-rotisserie.php, et ça marche mieux, le nom de villes apparait maintenant correctement, avec le code:
<?php echo $_GET['ville']; ?>
mais pour le code:
<?php  
$ville = str_replace("-"," ",$_GET['ville']);

$sql = ("SELECT nom,adresse,code_postal,ville,poemes FROM rotisserie WHERE ville='$ville' ORDER BY nom");  
$result = mysql_query($sql);  

while ($row = mysql_fetch_assoc($result)) {  
echo '<ul>';  
echo '<li>'.$row['nom'].'</li>';  
echo '<li>'.$row['adresse'].'</li>';  
echo '<li>'.$row['code_postal'].'</li>';  
echo '<li>'.$row['ville'].'</li>';  
echo '</ul>';  
}  
?>
rien ne s'affiche, je croyais avoir résolu le probleme mais en fait que la moitié.


arrrr, c pas génial
:cry: