forme d'entrée comme
<form action="<?php echo (htmlspecialchars($_SERVER["PHP_SELF"] .'?page=1')) ?>" method="post">
<input type='text' name='date_month' value='<?php echo $_POST['date_month'].$_GET['date_month']?>'>
</form>
reçoivent ensuite l'entrée
$post_date_month = $_POST['date_month'].$_GET['date_month'];
Sur la base de l'entrée de sélection/obtenir des données filtrées de MySQL
Comme il peut y avoir plusieurs lignes de données, la pagination créé. Comme ceci
for ($page_i = 1; $page_i <= $total_pages; $page_i++) {
echo "<a href='__filter_mysql_data.php?page=$page_i&date_month=$post_date_month&date_year=$post_date_year'>| $page_i |</a> ";
}
Remarque! Si dans l'URL je n'utilise pas &date_month=$post_date_month
puis lorsque l'utilisateur clique sur le numéro de page $page_i
, le script affichera toutes les données de mysql (non basé sur $post_date_month
, non seulement mois sélectionné par l'utilisateur, mais tous les mois, car après la page recharger $_POST['date_month']
"disparaît") .
Maintenant, c'est la seule solution de travail pour moi (j'ai trouvé plusieurs exemples avec la classe de pagination, mais ces exemples sont très compliqués pour moi, donc je ne peux pas dans un délai raisonnable pour mes besoins). Alors décidé de créer quelque chose de simple.
Le script fonctionne si nécessaire, seul ce $post_date_month = $_POST['date_month'].$_GET['date_month'];
semble un peu fou. Donc la question: est le code acceptable (peut être utilisé dans les scripts)? Avec la même requête (clic), l'utilisateur peut définir/passer soit $ _POST ou $ _GET et jamais les deux.
Mise à jour
Basé sur Ø Hanky Panky Ø des conseils (qui est unfortunatelly supprimé) a changé
$post_date_month = $_POST['date_month'].$_GET['date_month'];
à
$post_date_month = $_REQUEST['date_month'];
S'il vous plaît utiliser 'htmlspecialchars' pour éviter XSS lors de la sortie des données utilisateur. –
Lisez les documents pour '$ _REQUEST'. http://php.net/manual/fr/reserved.variables.request.php – Crontab
@ Marcel Korpel 'htmlspecialchars' est utilisé dans ' php echo (htmlspecialchars'. Je vais vérifier d'autres endroits .... – user2466952