Bonjour,
y'aurait il un programmeur php expérimenté qui pourrait m'aider svp? car ca fait une semaine que je cherche sans trouver.
J'ai un formulaire de plusieurs choix qui redirige vers la page de résultat.
je me connecte à la BDD, je calcule le nombre total de réponses, je filtre avec mes requêtes qui vont bien et ensuite j'affiche.
Jusque là tout va bien mais quand je clique sur la page suivant, il n'y a plus aucun résultat qui s'affiche. Alors je crois s'avoir qu'il faut utiliser $_cookies ou $_session pour pouvoir enregistrer le choix de l'internaute et le transmettre de page en page mais je galère grave! je ne sais pas écrire le code convenablement. Merci d'avance pour votre aide.
y'aurait il un programmeur php expérimenté qui pourrait m'aider svp? car ca fait une semaine que je cherche sans trouver.
J'ai un formulaire de plusieurs choix qui redirige vers la page de résultat.
je me connecte à la BDD, je calcule le nombre total de réponses, je filtre avec mes requêtes qui vont bien et ensuite j'affiche.
Jusque là tout va bien mais quand je clique sur la page suivant, il n'y a plus aucun résultat qui s'affiche. Alors je crois s'avoir qu'il faut utiliser $_cookies ou $_session pour pouvoir enregistrer le choix de l'internaute et le transmettre de page en page mais je galère grave! je ne sais pas écrire le code convenablement. Merci d'avance pour votre aide.
Code:
$agemin = isset($_POST['agemin']) ? $_POST['agemin'] : ( !empty($_GET['agemin']) ? $_GET['agemin'] : '') ; // récupération des données du champs de recherche
$agemax = isset($_POST['agemax']) ? $_POST['agemax'] : ( !empty($_GET['agemax']) ? $_GET['agemax'] : '') ; // récupération des données du champs de recherche
$taimin = isset($_POST['taimin']) ? $_POST['taimin'] : ( !empty($_GET['taimin']) ? $_GET['taimin'] : '') ; // récupération des données du champs de recherche
$taimax = isset($_POST['taimax']) ? $_POST['taimax'] : ( !empty($_GET['taimax']) ? $_GET['taimax'] : '') ; // récupération des données du champs de recherche
$poimin = isset($_POST['poimin']) ? $_POST['poimin'] : ( !empty($_GET['poimin']) ? $_GET['poimin'] : '') ; // récupération des données du champs de recherche
$poimax = isset($_POST['poimax']) ? $_POST['poimax'] : ( !empty($_GET['poimax']) ? $_GET['poimax'] : '') ; // récupération des données du champs de recherche
$enfant = isset($_POST['enfant']) ? $_POST['enfant'] : ( !empty($_GET['enfant']) ? $_GET['enfant'] : '') ; // récupération des données du champs de recherche
$statut = isset($_POST['statut']) ? $_POST['statut'] : ( !empty($_GET['statut']) ? $_GET['statut'] : '') ; // récupération des données du champs de recherche
$cheveux = isset($_POST['cheveux']) ? $_POST['cheveux'] : ( !empty($_GET['cheveux']) ? $_GET['cheveux'] : '') ; // récupération des données du champs de recherche
$yeux = isset($_POST['yeux']) ? $_POST['yeux'] : ( !empty($_GET['yeux']) ? $_GET['yeux'] : '') ; // récupération des données du champs de recherche
$ville = isset($_POST['ville']) ? $_POST['ville'] : ( !empty($_GET['ville']) ? $_GET['ville'] : '') ; // récupération des données du champs de recherche
?>
<?php
$perPage = 12; // resultats max par page
$req = $db->query("SELECT COUNT(*) AS total FROM profils WHERE enfant = '$enfant' AND age BETWEEN (curdate() - interval '$agemax' year) AND (curdate() - interval '$agemin' year) AND taille BETWEEN '$taimin' AND '$taimax' AND poids BETWEEN '$poimin' AND '$poimax' AND statut = '$statut' AND cheveux = '$cheveux' AND yeux = '$yeux' AND ville = '$ville'");
$result = $req->fetch();
$total = $result['total'];?>
<div id="box-right-catalogue">
<?php $nbPage = ceil($total/$perPage);
if(isset($_GET['page']) && !empty($_GET['page']) && ctype_digit($_GET['page']) == 1){
if ($_GET['page'] > $nbPage) {
$page = $nbPage;
}else{
$page = $_GET['page'];
}
}else{
$page = 1;
}
$first = ($page-1)*$perPage;
$reponse = $db->query("SELECT * FROM profils WHERE enfant = '$enfant' AND age BETWEEN (curdate() - interval '$agemax' year) AND (curdate() - interval '$agemin' year) AND taille BETWEEN '$taimin' AND '$taimax' AND poids BETWEEN '$poimin' AND '$poimax' AND statut = '$statut' AND cheveux = '$cheveux' AND yeux = '$yeux' AND ville = '$ville' ORDER BY age DESC LIMIT $first, $perPage" );
while ($donnees = $reponse->fetch())
{
?>
<div class="box-cadre-catalogue">
<img src="profils/<?php echo $donnees['photo']; ?>" class="photo1-catalogue" width="219" height="330">
<?php echo "<a href='".$donnees['lien']."'>"; ?> <img src="images/1cadre.png"class="cadre1-catalogue"></a>
<p class="prenom-catalogue"><?php echo $donnees['prenom']; ?>
<?php echo ageCalculator($donnees['age']);?> ans</p>
</div>
<?php } ?>
<!-- *********** NUMÉROS DE PAGES ************* NUMÉROS DE PAGES ************* NUMÉROS DE PAGES **************-->
<div class="numeros-pages">
<ul id="pagination">
<?php
if ($page > 1):
?><li><a href="?page=<?php echo $page - 1; ?>">Précédent</a></li> <?php
endif;
for ($i = 1; $i <= $nbPage; $i++):
if($i == $page){
?><li class="active"><a href="?page=<?php echo $i; ?>"><?php echo $i; ?></a></li>
<?php
}
else{
?>
<li><a href="?page=<?php echo $i; ?>"><?php echo $i; ?></a></li><?php }
endfor;
if ($page < $nbPage):
?> <li><a href="?page=<?php echo $page + 1 ;?>">Suivant</a></li><?php
endif;
?>
</ul>
</div>
</div>