Page 1 sur 1

Recherche de membres

Posté : 28 févr. 2017, 16:03
par doums10
Bonjour,

J'ai un projet à réaliser concernant un site communautaire et j'ai opté pour un site de rencontres.Malheureusement, je bloque sur la page de recherche des membres où par exemple un utilisateur pourrait rechercher des membres via sexe, annee de naissance , code postal, tout en affichant la photo de chaque membre en validant cette recherche.

Est ce quelqu’un sait comment réaliser ce genre de page ou comment modifier son code en pdo.J'avais réussi à afficher des membres mais j'avais toujours le même résultat et l'image de chaque membre ne s'affichait pas.

Voici le code:
<?php
session_start();

/** inclusions des fonctions utilisateur et connexion bdd **/
include_once  "inc/fonctions.inc.php";
include_once "functions.php";
// Connexion base de données
//conditions
/* Variable recuperer lors de la validation de la recherche */
if(isset($_POST['envoi']))
{ var_dump($_POST);
	if(!empty($_POST['sexe']) AND !empty($_POST['annee_naissance']) AND !empty($_POST['code_postal']) AND !empty($_POST['login']))
{
  $sexe = ($_POST['sexe']);
  $annee_naissance = ($_POST['annee_naissance']);
  $code_postal = htmlEntities($_POST['code_postal']);
  $login =  htmlspecialchars($_POST['login']);

/* Variable de conditions de la requete de recherche */




//$conditions = 'id_membre != ' . $id_membre;
//if (!empty($sexe)) $conditions .= " AND sexe = '".$sexe."'";
//if (!empty($annee_naissance) && is_numeric($annee_naissance)) $conditions .= " AND annee_naissance BETWEEN '$date_naissance-1950' AND '$date_naissance-2000'";
//if (!empty($code_postal)) $conditions .= " AND code_postal = '".$code_postal."'";
//if (!empty($login)) $conditions .= " AND login = '".$login."'";


/* REquete de la recherche */

//$requete_recherche = $connexion->prepare("SELECT * FROM membre WHERE login=? AND annee_naissance=? AND code_postal=? AND sexe=?");
//$result = $requete_recherche->execute(array($login, $annee_naissance, $code_postal, $sexe));

//if($result){

	//while ($row = $requete_recherche->fetch()) {
     //var_dump($row);
  // }

//}


//}
//}
$req = $connexion->prepare("SELECT *
                                FROM membre
                                WHERE
                                    login = :login AND
                                    annee_naissance = :annee_naissance AND
                                    code_postal = :code_postal AND
                                    sexe = :sexe
                                    ");
    $req->bindParam(':login',           $login,           PDO::PARAM_STR);
    $req->bindParam(':annee_naissance', $annee_naissance, PDO::PARAM_INT);
    $req->bindParam(':code_postal',     $code_postal,     PDO::PARAM_STR);
    $req->bindParam(':sexe',            $sexe,            PDO::PARAM_STR);
    $req->execute();
    $result = $req->fetch(PDO::FETCH_OBJ);

    // affichage du résultat
    echo "Login: ".$result->login."<br />";
    echo "Année de naissance ".$result->annee_naissance."<br />";
    echo "Code postal: ".$result->code_postal."<br />";
    echo "Sexe: ".$result->sexe."<br />";

	}
}

 ?>
 <!DOCTYPE HTML>
 <html>
 <head>
 <meta charset="UTF-8">
 <title> | Register :: w3layouts</title>
 <link href="css/bootstrap.css" rel='stylesheet' type='text/css' />
 <!-- Custom Theme files -->
 <link href="css/style.css" rel='stylesheet' type='text/css' />
 <!-- Custom Theme files -->
 <meta name="viewport" content="width=device-width, initial-scale=1">
 <script type="application/x-javascript"> addEventListener("load", function() { setTimeout(hideURLbar, 0); }, false); function hideURLbar(){ window.scrollTo(0,1); } </script>
 <!--webfont-->
 <link href='http://fonts.googleapis.com/css?family=Montserrat:400,700' rel='stylesheet' type='text/css'>
 <!--dropdown-->
 <script src="js/jquery-1.11.1.min.js"></script>

 </head>
 <body>
 <div class="header">
 	<div class='container'>
 		<div class="header_left">
 			<img src="images/logo.png" alt=""/>
 		</div>
 		<div class="logo">
 			<a href="register.php"><img src="" alt=""/>
 				<span></span>
 			</a>
 		</div>
 		<div class="header_right">
 			<ul class="header_user_info">
 			  <a class="login" href="login.php">
 				<li class="user_desc"><span class="m_1">Already user ? </span>Login</li>
 				<i class="user"> </i>
 				<div class="clearfix"> </div>
 			  </a>
 			  <div class="clearfix"> </div>
 	    	</ul>
 			<a href="register.php" class="btn1 btn-1 btn1-1b">Sign Up</a>
 		</div>
 		<div class="clearfix"> </div>
 	</div>
 </div>
 <div class="profile_banner">
 	<div class="container">
 	   <h3>Membres</h3>
 	</div>
 </div>
 <form class="" action="" method="post">


 	<td align="left" class="important" colspan="2">
 	Recherche rapide
 	</td>

 <tr>
 	<br><br>

 	<td>
 	Vous cherchez:
 	</td>
 	<td>
    <div>
    <span>Sexe<label>*</label></span>

   <input type="radio" name="sexe" value="m" id="sexe" checked='checked'>Homme
   <input type="radio" name="sexe" value="f" id="sexe">Femme
   </div>
 	</td>
 </tr>

 <br><br>
 <div>
  <span>Année de naissance<label>*</label></span>
  <?php
// Variable qui ajoutera l'attribut selected de la liste déroulante
$selected = '';

// Parcours du tableau
echo '<select name="annee_naissance">',"\n";
for($i=1900; $i<=2000; $i++)
{
// L'année est-elle l'année courante ?
if($i == date('Y'))
{
$selected = ' selected="selected"';
}
// Affichage de la ligne
echo "\t",'<option value="', $i ,'"', $selected ,'>', $i ,'</option>',"\n";
// Remise à zéro de $selected
$selected='';
}
echo '</select>',"\n";
?>
 </div>

 <div>
<span>Pseudo<label>*</label></span>
<input type="text" name='login'placeholder="Votre pseudo">

 </div>

 <div>
   <span>Code postal<label>*</label></span>
   <input type="text" name='code_postal'placeholder="Votre code postal">

  </div>


 <tr>
 	<td colspan="2"><input  type="submit" name="envoi" value='Valider'></td>
 </tr>

 </form>
 <?php
  if(isset($erreur))
  {
    echo '<font color = "red">'.$erreur."</font>";
  }


  ?>



 <div class="content_bottom">
 	<div class="container">
 	  <div class="box1">
 		<div class="col-md-4 wow fadeInLeft" data-wow-delay="0.4s">
 		  <div class="grid_4"><a href="single.html">
 			<h4><span class="m_3">Leonardo , </span> Manager-usa</h4>
 			<img src="images/pic1.jpg" class="img-responsive" alt=""/>
 			<ul class="category_desc">
 			   <li class="cate_head">Based in 1.100 votes</li>
 			   <li class="cate_right">
 			   	 <ul class="list1">
 			   	    <li><i class="heart"> </i></li>
 			   	    <li><i class="heart"> </i></li>
 			   	    <li><i class="heart"> </i></li>
 			   	    <li><i class="heart"> </i></li>
 			   	 </ul>
 			   </li>
 			   <div class="clearfix"> </div>
 			</ul>
 			<h5>Full Profile</h5>
 		</a> </div>
 		</div>
 		<div class="col-md-4 wow fadeInUp" data-wow-delay="0.4s">
 		   <div class="grid_4"><a href="single.html">
 			<h4><span class="m_3">luke ,</span>engineer-usa</h4>
 			<img src="images/pic2.jpg" class="img-responsive" alt=""/>
 			<ul class="category_desc">
 			   <li class="cate_head">Based in 956 votes</li>
 			   <li class="cate_right">
 			   	 <ul class="list1">
 			   	   <li><i class="heart"> </i></li>
 			   	   <li><i class="heart"> </i></li>
 			   	   <li><i class="heart"> </i></li>
 			   	 </ul>
 			   </li>
 			   <div class="clearfix"> </div>
 			</ul>
 			<h5>Full Profile</h5>
 		  </a></div>
 	    </div>
 		<div class="col-md-4 wow fadeInRight" data-wow-delay="0.4s">
 		  <div class="grid_4"><a href="single.php">
 			<h4><span class="m_3">max ,</span>security-usa</h4>
 			<img src="images/pic3.jpg" class="img-responsive" alt=""/>
 			<ul class="category_desc">
 			   <li class="cate_head">Based in 900 votes</li>
 			   <li class="cate_right">
 			   	 <ul class="list1">
 			   	    <li><i class="heart"> </i></li>
 			   	    <li><i class="heart"> </i></li>
 			   	    <li><i class="heart"> </i></li>
 			   	 </ul>
 			   </li>
 			   <div class="clearfix"> </div>
 			</ul>
 			<h5>Full Profile</h5>
 		  </a></div>
 	    </div>
 		<div class="clearfix"> </div>
 	  </div>
 	  <div class='span1'>
 		  <select class="dropdown" tabindex="10" data-settings='{"wrapperClass":"metro1"}'>
 		    <option value="0">More Profiles</option>
 			<option value="1">Tincidunt</option>
 			<option value="2">Magna</option>
 			<option value="3">Lectores </option>
 			<option value="4">Insitam</option>
 			<option value="5">Claritatem </option>
 			<option value="5"></option>
 			<option value="5"></option>
 		  </select>
 	  </div>
 	  <div class='clearfix'> </div>
 	  <div class="search wow bounceInUp" data-wow-delay="0.4s">
    	    <h3>Looking for someone ? </h3>
    	    <form>
 		 <span>
 		   <div class="search-box">
 		   	<i class="search-icon"> </i>
 		    <input type="text" value="Type something here..." onfocus="this.value = '';" onblur="if (this.value == '') {this.value = 'Type something here...';}">
 		   </div>
 		   <input name="submit" type="submit" id="submit" value="Search">
 		 </span>
 		<div class="clearfix"> </div>
 	    </form>
 	   <h4>Disclaimer</h4>
 	   <p class="m_2">Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi. Nam liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim placerat facer possim assum.</p>
        <p>Typi non habent claritatem insitam; est usus legentis in iis qui facit eorum claritatem. Investigationes demonstraverunt lectores legere me lius quod ii legunt saepius. Claritas est etiam processus dynamicus, qui sequitur mutationem consuetudium lectorum. Mirum est notare quam littera gothica, quam nunc putamus parum claram, anteposuerit litterarum formas humanitatis per seacula quarta decima et quinta decima. Eodem modo typi, qui nunc nobis videntur parum clari, fiant sollemnes in futurum. </p>
       </div>
    </div>
 </div>
 <div class="footer">
 	<div class="container">
 		<div class="cssmenu wow fadeInLeft" data-wow-delay="0.4s">
 		  <ul>
 			<li class="active"><a href="#">Home</a></li>
 			<li><a href="about.html">About</a></li>
 			<li><a href="profiles.php">Add Profile</a></li>
 			<li><a href="contact.html">Contact</a></li>
 		  </ul>
 	    </div>
 	    <div class="copy wow fadeInUp" data-wow-delay="0.4s">
 			<p>&copy; 2014 Template by <a href="http://w3layouts.com" target="_blank">w3layouts</a></p>
 		</div>
 		<div class="social wow fadeInRight" data-wow-delay="0.4s">
 			<ul class="footer_social">
 			  <li><a href="#"> <i class="fb"> </i> </a></li>
 			  <li><a href="#"> <i class="tw"> </i> </a></li>
 		   </ul>
 		</div>
 	    <div class='clearfix'> </div>
 	</div>
 </div>
 </body>
 </html>

 <!DOCTYPE html>
 <html lang="en">
 <head>
   <meta charset="UTF-8">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta http-equiv="X-UA-Compatible" content="ie=edge">
   <title>Document</title>
 </head>
 <body>

 </body>
 </html>

Re: Recherche de membres

Posté : 28 févr. 2017, 17:07
par moogli
salut,

ton code est un un sacré foutoir (et beaucoup trop long pour tout lire)
tu as deux fichier distinct dans le ce même code, rien que cela ne peux fonctionner.

ensuite je pense que tu n'as pas compris comment fonctionne l'accès à la base de données
gobalement le requête un jeux de résultat il faut donc le parcourir.
classiquement cela se fait avec une boucle while (avec PDO tu peux aussi utiliser fetch_all pour tous récupérer d'un coup).
exemple
<?php
$pdo = new PDO('.....');
$stmt = $pdo->execute('select les,colonnes,que,tu,as,besoin from latable where truc=\'bidulle\'');
while ($data = $stmt->fetch(PDO::FETCH_ASSOC)) {
echo $data['les']; // ...
}
$stmt.closeCursor();
et cela bien entendu a l'endroit où tu souhaites afficher ta liste.

tu peux aussi opter pour un modèle de conception type MVC pour éviter de tout mélanger ;)


@+

Re: Recherche de membres

Posté : 28 févr. 2017, 17:26
par doums10
Ok merci,je vais réduire ma demande.
Déjà si je recherche un homme dans ma bdd, j'aimerais que tous les hommes s'affichent et la même chose pour une femme.Concernant le code postal,l'année de naissance et le pseudo je verrai après.
Ca a l'air trop compliqué et concernant la connexion à la base,elle se fait via le include_once "inc/fonctions.inc.php"; qui contient ceci:
<?php

$serveur = "localhost";
$login = "root";
$pass = "";
try{
  $connexion = new PDO("mysql:host=$serveur;dbname=comair", $login, $pass);
  $connexion -> setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
//echo 'Connexion à la base de données réussie';

    }
catch(PDOException $e){
    echo 'Echec de la connexion : '.$e->getMessage();
}
$connexion->query("SET NAMES UTF8");




?>
Donc là j'ai viré tout le bordel, j'ai gardé uniquement la recherche par sexe (si l'utilisateur recherche un membre homme alors affiche moi les hommes, si l’utilisateur recherche une femme alors affiche moi les femmes).

Par la suite j'aimerais bien que la photo du membre s'affiche aussi......je préfère préciser que je suis débutant mais je pense que ça s'est vu.C'est un peu le fouillis cette histoire de membre et je suis bloqué.
<?php
session_start();

/** inclusions des fonctions utilisateur et connexion bdd **/
include_once  "inc/fonctions.inc.php";
include_once "functions.php";
// Connexion base de données
//conditions
/* Variable recuperer lors de la validation de la recherche */
if(isset($_POST['envoi']))
var_dump($result);
{
	if(!empty($_POST['sexe']))
{
  $sexe = ($_POST['sexe']);


/* REquete de la recherche */

$requete_recherche = $connexion->prepare("SELECT sexe FROM membre");
$result = $requete_recherche->execute(array($sexe));

if($result){

	while ($row = $requete_recherche->fetch()) {
  
   }

}


}
}

 ?>
 <!DOCTYPE HTML>
 <html>
 <head>
 <meta charset="UTF-8">
 <title> | Register :: w3layouts</title>
 <link href="css/bootstrap.css" rel='stylesheet' type='text/css' />
 <!-- Custom Theme files -->
 <link href="css/style.css" rel='stylesheet' type='text/css' />
 <!-- Custom Theme files -->
 <meta name="viewport" content="width=device-width, initial-scale=1">
 <script type="application/x-javascript"> addEventListener("load", function() { setTimeout(hideURLbar, 0); }, false); function hideURLbar(){ window.scrollTo(0,1); } </script>
 <!--webfont-->
 <link href='http://fonts.googleapis.com/css?family=Montserrat:400,700' rel='stylesheet' type='text/css'>
 <!--dropdown-->
 <script src="js/jquery-1.11.1.min.js"></script>

 </head>
 <body>
 <div class="header">
 	<div class='container'>
 		<div class="header_left">
 			<img src="images/logo.png" alt=""/>
 		</div>
 		<div class="logo">
 			<a href="register.php"><img src="" alt=""/>
 				<span></span>
 			</a>
 		</div>
 		<div class="header_right">
 			<ul class="header_user_info">
 			  <a class="login" href="login.php">
 				<li class="user_desc"><span class="m_1">Already user ? </span>Login</li>
 				<i class="user"> </i>
 				<div class="clearfix"> </div>
 			  </a>
 			  <div class="clearfix"> </div>
 	    	</ul>
 			<a href="register.php" class="btn1 btn-1 btn1-1b">Sign Up</a>
 		</div>
 		<div class="clearfix"> </div>
 	</div>
 </div>
 <div class="profile_banner">
 	<div class="container">
 	   <h3>Membres</h3>
 	</div>
 </div>
 <form class="" action="" method="post">


 	<td align="left" class="important" colspan="2">
 	Recherche rapide
 	</td>

 <tr>
 	<br><br>

 	<td>
 	Vous cherchez:
 	</td>
 	<td>
    <div>
    <span>Sexe<label>*</label></span>

   <input type="radio" name="sexe" value="m" id="sexe" checked='checked'>Homme
   <input type="radio" name="sexe" value="f" id="sexe">Femme
   </div>
 	</td>
 </tr>

 <br><br>
 <!--<div>
  <span>Année de naissance<label>*</label></span>
  <?php
// Variable qui ajoutera l'attribut selected de la liste déroulante
$selected = '';

// Parcours du tableau
echo '<select name="annee_naissance">',"\n";
for($i=1900; $i<=2000; $i++)
{
// L'année est-elle l'année courante ?
if($i == date('Y'))
{
$selected = ' selected="selected"';
}
// Affichage de la ligne
echo "\t",'<option value="', $i ,'"', $selected ,'>', $i ,'</option>',"\n";
// Remise à zéro de $selected
$selected='';
}
echo '</select>',"\n";
?>
 </div>

 <div>
<span>Pseudo<label>*</label></span>
<input type="text" name='login'placeholder="Votre pseudo">

 </div>

 <div>
   <span>Code postal<label>*</label></span>
   <input type="text" name='code_postal'placeholder="Votre code postal">

  </div>

-->
 <tr>
 	<td colspan="2"><input  type="submit" name="envoi" value='Valider'></td>
 </tr>

 </form>
 <?php
  if(isset($erreur))
  {
    echo '<font color = "red">'.$erreur."</font>";
  }


  ?>



 <div class="content_bottom">
 	<div class="container">
 	  <div class="box1">
 		<div class="col-md-4 wow fadeInLeft" data-wow-delay="0.4s">
 		  <div class="grid_4"><a href="single.html">
 			<h4><span class="m_3">Leonardo , </span> Manager-usa</h4>
 			<img src="images/pic1.jpg" class="img-responsive" alt=""/>
 			<ul class="category_desc">
 			   <li class="cate_head">Based in 1.100 votes</li>
 			   <li class="cate_right">
 			   	 <ul class="list1">
 			   	    <li><i class="heart"> </i></li>
 			   	    <li><i class="heart"> </i></li>
 			   	    <li><i class="heart"> </i></li>
 			   	    <li><i class="heart"> </i></li>
 			   	 </ul>
 			   </li>
 			   <div class="clearfix"> </div>
 			</ul>
 			<h5>Full Profile</h5>
 		</a> </div>
 		</div>
 		<div class="col-md-4 wow fadeInUp" data-wow-delay="0.4s">
 		   <div class="grid_4"><a href="single.html">
 			<h4><span class="m_3">luke ,</span>engineer-usa</h4>
 			<img src="images/pic2.jpg" class="img-responsive" alt=""/>
 			<ul class="category_desc">
 			   <li class="cate_head">Based in 956 votes</li>
 			   <li class="cate_right">
 			   	 <ul class="list1">
 			   	   <li><i class="heart"> </i></li>
 			   	   <li><i class="heart"> </i></li>
 			   	   <li><i class="heart"> </i></li>
 			   	 </ul>
 			   </li>
 			   <div class="clearfix"> </div>
 			</ul>
 			<h5>Full Profile</h5>
 		  </a></div>
 	    </div>
 		<div class="col-md-4 wow fadeInRight" data-wow-delay="0.4s">
 		  <div class="grid_4"><a href="single.php">
 			<h4><span class="m_3">max ,</span>security-usa</h4>
 			<img src="images/pic3.jpg" class="img-responsive" alt=""/>
 			<ul class="category_desc">
 			   <li class="cate_head">Based in 900 votes</li>
 			   <li class="cate_right">
 			   	 <ul class="list1">
 			   	    <li><i class="heart"> </i></li>
 			   	    <li><i class="heart"> </i></li>
 			   	    <li><i class="heart"> </i></li>
 			   	 </ul>
 			   </li>
 			   <div class="clearfix"> </div>
 			</ul>
 			<h5>Full Profile</h5>
 		  </a></div>
 	    </div>
 		<div class="clearfix"> </div>
 	  </div>
 	  <div class='span1'>
 		  <select class="dropdown" tabindex="10" data-settings='{"wrapperClass":"metro1"}'>
 		    <option value="0">More Profiles</option>
 			<option value="1">Tincidunt</option>
 			<option value="2">Magna</option>
 			<option value="3">Lectores </option>
 			<option value="4">Insitam</option>
 			<option value="5">Claritatem </option>
 			<option value="5"></option>
 			<option value="5"></option>
 		  </select>
 	  </div>
 	  <div class='clearfix'> </div>
 	  <div class="search wow bounceInUp" data-wow-delay="0.4s">
    	    <h3>Looking for someone ? </h3>
    	    <form>
 		 <span>
 		   <div class="search-box">
 		   	<i class="search-icon"> </i>
 		    <input type="text" value="Type something here..." onfocus="this.value = '';" onblur="if (this.value == '') {this.value = 'Type something here...';}">
 		   </div>
 		   <input name="submit" type="submit" id="submit" value="Search">
 		 </span>
 		<div class="clearfix"> </div>
 	    </form>
 	   <h4>Disclaimer</h4>
 	   <p class="m_2">Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi. Nam liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim placerat facer possim assum.</p>
        <p>Typi non habent claritatem insitam; est usus legentis in iis qui facit eorum claritatem. Investigationes demonstraverunt lectores legere me lius quod ii legunt saepius. Claritas est etiam processus dynamicus, qui sequitur mutationem consuetudium lectorum. Mirum est notare quam littera gothica, quam nunc putamus parum claram, anteposuerit litterarum formas humanitatis per seacula quarta decima et quinta decima. Eodem modo typi, qui nunc nobis videntur parum clari, fiant sollemnes in futurum. </p>
       </div>
    </div>
 </div>
 <div class="footer">
 	<div class="container">
 		<div class="cssmenu wow fadeInLeft" data-wow-delay="0.4s">
 		  <ul>
 			<li class="active"><a href="#">Home</a></li>
 			<li><a href="about.html">About</a></li>
 			<li><a href="profiles.php">Add Profile</a></li>
 			<li><a href="contact.html">Contact</a></li>
 		  </ul>
 	    </div>
 	    <div class="copy wow fadeInUp" data-wow-delay="0.4s">
 			<p>&copy; 2014 Template by <a href="http://w3layouts.com" target="_blank">w3layouts</a></p>
 		</div>
 		<div class="social wow fadeInRight" data-wow-delay="0.4s">
 			<ul class="footer_social">
 			  <li><a href="#"> <i class="fb"> </i> </a></li>
 			  <li><a href="#"> <i class="tw"> </i> </a></li>
 		   </ul>
 		</div>
 	    <div class='clearfix'> </div>
 	</div>
 </div>
 </body>
 </html>

 <!DOCTYPE html>
 <html lang="en">
 <head>
   <meta charset="UTF-8">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta http-equiv="X-UA-Compatible" content="ie=edge">
   <title>Document</title>
 </head>
 <body>

 </body>
 </html>

Re: Recherche de membres

Posté : 28 févr. 2017, 17:48
par moogli
c'est dommage tu avais une requête SQL correcte et t'as tout viré :s

faut se concentrer un peu et repartir aux bases.
0/ créer un fichier php tout neuf
1/ écrit la requête SQL comme tu l'utiliserais dans un client SQL
2/ écrit juste de la code pour afficher le résultat de cette requête SQL

quand tout cela fonctionne tu met en paramètre la valeur du prédicat (comme c'est fait dans ton 1er message c'est correct).
pour exécuter la requête tu utilise la valeur issue du formulaire ($_POST['sexe'] dans un premier temps pour sélectionner qu'en fonction du sexe).
lorsque cela fonctionne tu as ta fonctionnalités a mettre dans le code précédent.
en tout état de chose tu ne pas afficher comme ça le donnée avant le début du html, il faut que tu l'affichage au milieu de ta page html (sous le formulaire je suppose).

si ceci est un projet scolaire il serait bon de demander des compléments de cours pour éviter de trop patauger ;)

@+

Re: Recherche de membres

Posté : 28 févr. 2017, 17:57
par doums10
Là je viens de tester autre chose mais c'est un bourbier sans fin.J'ai l'impression que mon bouton valider ne sert à rien.
En gros j'ai ceci qui est affiché
http://imgur.com/a/gFn6v

Tous les membres inscrits sont affiché et même si je sélectionne homme,j'ai aussi les femmes.
<?php
session_start();

/** inclusions des fonctions utilisateur et connexion bdd **/
include_once  "inc/fonctions.inc.php";
include_once "functions.php";
// Connexion base de données
//conditions
/* Variable recuperer lors de la validation de la recherche */
if(isset($_POST['envoi']))

{
	if(!empty($_POST['sexe']))
{
  $sexe = ($_POST['sexe']);


/* REquete de la recherche */

$stmt = $connexion->prepare("SELECT * FROM membre");
$stmt->execute(array($_POST['sexe']));
while ($data = $stmt->fetch()) {
echo $data['sexe']; // ...
}
   }

}



 ?>

Re: Recherche de membres

Posté : 28 févr. 2017, 18:05
par or 1
c'est de cela qu'il faut repartir :
$req = $connexion->prepare("SELECT *
FROM membre
WHERE
login = :login AND
annee_naissance = :annee_naissance AND
code_postal = :code_postal AND
sexe = :sexe
");
vu que cela contient ce que tu veux faire.

Re: Recherche de membres

Posté : 01 mars 2017, 10:27
par moogli
pour le SQL : http://sqlpro.developpez.com/
il faut vraiment que tu commence par comprendre ce que tu fait en SQL.
une fois que tu es à l'aise avec ça tu peux passer au php.
si tu as compris comment utiliser les requête avec marqueur tu peux tester juste le code qui récupère les infos en indiquant une valeur pour le (ou les marqueurs) en dur.
ensuite, lorsque la première étape fonctionne, tu passe au formulaire tu crées le formulaire et essais de récupérer correctement les données de celui-ci.
quand tu les as tu peux les utiliser pour les paramètres de la requêtes SQL.
ensuite tu intègres le tout à ta page.

il faut vraiment y aller étape par étape et comprendre chacun d'elle sinon tu t'en sortira pas (c'est comme pour tout il y a une étape d'apprentissage ;) )

@+