Php/MySQL : requête dans un lien

Dorianv Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
Dorianv Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Après de nombreux aller-retours sur différents forum pour trouver de l'aide je me décide à poster car j'ai 2 problèmes que je n'arrive pas à résoudre.
Voici mon code :

if(isset($_POST['envoyer'])) {

if ($_POST['diametre'] >=10 AND $_POST['diametre'] <100 AND isset($_POST['diametre']) {
$reponse = $bdd->query("SELECT id, title FROM joscofim_content WHERE diametre_min >=10 AND diametre_max <100");

}

if (preg_match("#^[0-9]{1,4}([\.|,]\d{1})?$#", $_POST['diametre']) && preg_match("#^[0-9]{1,4}([\.|,]\d{1})?$#", $_POST['epaisseur'])){
if (isset($reponse)){
while($donnees = $reponse->fetch()){

?><a href="detail.php"><?php echo $donnees['title'];<? </a>;<br/><br/><?php

}
$reponse->closeCursor();
}
}

( le copier/coller bug au niveau de l'indentation mais ca reste lisible )

Alors je voudrais pouvoir récupérer le champ title de ma requête $reponse dans un lien :
<a href="detail.php"><?phpecho $donnees['title'];<?</a>
Ce que j'ai fais comme ceci et le navigateur ne m'affiche pas le contenu de echo ( alors que ça marche si je ne met pas le lien <a> )

Ensuite je voudrais appliquer sur ce lien une seconde requête qui donnerait son résultat dans la page detail.php. J'imagine qu'il doit falloir récupérer l'id par exemple et appliquer la requête comme ceci SELECT champ FROM joscofim_content WHERE id = $id. Mais je ne vois pas comment.

Afin d'expliquer le pourquoi du comment, je ne peux pas afficher la seconde requête directement car celle-ci affiche des fiches techniques qui prennent pas mal de place, c'est pourquoi il faut que je passe par le nom de la machine ( title ) d'abord.

J'espère avoir été assez clair. Merci d'avance pour votre aide.
A voir également:

2 réponses

Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
pour le pb de l'echo tu avais mis <? au lieu de ?> après echo $donnees..

essayes come ça:
<?php
if(isset($_POST['envoyer'])) {

	if ($_POST['diametre'] >=10 AND $_POST['diametre'] <100 AND isset($_POST['diametre']) {
		$reponse = $bdd->query("SELECT id, title FROM joscofim_content WHERE diametre_min >=10 AND diametre_max <100");

	}

		if (preg_match("#^[0-9]{1,4}([\.|,]\d{1})?$#", $_POST['diametre']) && preg_match("#^[0-9]{1,4}([\.|,]\d{1})?$#", $_POST['epaisseur'])){
			if (isset($reponse)){
				while($donnees = $reponse->fetch()){
					echo '<a href="detail.php?id='.$donnees['id'].'">'.$donnees['title'].' </a><br/><br/>';
				}
			$reponse->closeCursor();
			}
		}
}

//pour recuperer l'id du titre:
if(isset($_GET['id']) {
	$id=$_GET['id'];
}
//ensuite:
SELECT champ FROM joscofim_content WHERE id = $id
1
Dorianv Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
Ha super merci beaucoup.
J'ai encore quelques soucis mais je dois pouvoir les régler tout seul, c'était surtout pour récupérer l'id que j'avais du mal. Et le <? sans commentaire ^^
Merci encore

Cordialement.

Dorianv
0