pb de passage de paramètre dans l'URL

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : pb de passage de paramètre dans l'URL

par Cyrano » 29 mai 2005, 22:53

C'est toujours possible, le problème, c'est de savoir à quel endroit tu veux limiter.

Tu peux le faire au niveau de la requête en ajoutant un LIMIT 0, 1 par exemple et avoir sur ta page un lien contenant une variable qui ferait varier le point de départ qui au lieu d'être 0 pourrait être 3 ou 5 ou autre chose;

Autre option, tu stokes les résultats dans un tableau et tu utilises toujours un paramètre dans un ien pour faire afficher les suivants ou précédents pour aller chercher $tableau[0] ou $tableau[12] ou $tableau[3].

Dans les deux cas, ça recharge la page, mais à chaque fois tu récupère s'il existe le paramètre de choix. S'il n'existe pas, pour éviter une erreur, tu définis une valeur par défaut.

par ricardo » 29 mai 2005, 22:20

Encore un petit souci :

Maintenant j'affiche qu'une fois la rubrique meme si il y a plusieurs enregistrement dans cette rubrique.
Quand je clique sur une rubrique tous les enregistrements s'affichent les uns sous les autres alors que moi j'aimerais afficher un enregistrement à la fois.

Est-ce possible et comment faire ?

par rami » 29 mai 2005, 21:25

De rien ;)

par ricardo » 29 mai 2005, 21:24

C'est bon trouvé merci Rami

Il manquait un GROUP BY

par rami » 29 mai 2005, 21:23

Je ne saisis pas bien la structure de ta table. A quoi sert le champ rubrique?

Sinon essaies de modifier tes requetes:
$query_medias="
SELECT * 
FROM medias 
WHERE id='$medias'
GROUP BY titre";

$query_medias="
SELECT * 
FROM medias 
GROUP BY titre
ORDER BY id DESC"; 
Mais a priori, je dirais que la structure de ta table n'est pas optimale...

par ricardo » 29 mai 2005, 21:16

Voila mon code
<? if(!isset($_GET["id"])){	$_GET["id"]="";}
$medias=$_GET["id"];


$query_medias="SELECT * FROM medias WHERE id='$medias'";
$result_medias=mysql_query($query_medias);

 
while($val_medias=mysql_fetch_array($result_medias)){ ?>
<?
$query_medias="SELECT * FROM medias ORDER BY id DESC";
$result_medias=mysql_query($query_medias);
?>

<? while($val_medias=mysql_fetch_array($result_medias)){
	echo "<div><a href=\"cadre_medias_ok.php?id=".$val_medias["id"]."\">".$val_medias["titre"]."</a></div>";
	}
	?>

par rami » 29 mai 2005, 21:06

C'est difficile de répondre sans code, mais à priori je te dirais de rajouter une clause GROUP BY rubrique dans ta requête ;)
Par contre, quel est le rapport entre le titre du post et ta question :?:

pb de passage de paramètre dans l'URL

par ricardo » 29 mai 2005, 21:04

Bonsoir,

Je possède une table medias composée :

- id (int) en autoincrémentation
- date
- titre : lien qui va etre afficher pour accèder aux rubriques
- contenu : contenu de l'enregistrement
- rubrique : champs de passage dans l'URL

Mon probleme est lorsque que j'ai deux enregistrements appartenant à la meme rubrique, mon lien (champ titre) s'affiche deux fois et ainsi de suite.
Comment faire pour qu'un seul lien s'affiche par rubrique meme si j'ai plusieurs enregistrements de la meme rubrique ?

Merci