2011-05-26 1 views
0

J'ai une base de données avec quelques informations et du code html qui génère un rapport des données dans la base de données, en fonction de la requête sql dans le code. Je voudrais que les utilisateurs puissent utiliser un formulaire pour extraire uniquement certaines données sans avoir à modifier manuellement la requête sql. Comment puis-je faire ceci?Formulaire en php pour rechercher des données dans la base de données sql et afficher

Mon formulaire a 3 champs (code de succursale, adresse IP et numéro de série) que je voudrais utiliser comme critères de recherche pour les informations qui devraient être affichées dans le rapport.

Lorsqu'un utilisateur tape dans le code de branche par exemple, le formulaire doit adapter la requête sql pour n'afficher que les informations de branches spécifiques.

+0

vous devez d'abord essayer quelques tutoriels ajax – jimy

Répondre

1

Vous pouvez créer une requête SQL par programme en fonction de l'entrée de l'utilisateur - mais vous devez faire attention à la façon dont vous le faites. L'acceptation directe de l'entrée de l'utilisateur et son inclusion dans une instruction SQL est généralement considérée comme une mauvaise idée, surtout si vous ne la validez pas correctement.

Une alternative est d'utiliser les commandes préparées (en supposant que vous utilisez MySQL): http://dev.mysql.com/tech-resources/articles/4.1/prepared-statements.html

Il y a aussi beaucoup de bibliothèques flottantes autour de cette aide avec SQL, y compris la vérification/aseptisation. D'après ce que vous avez dit, lorsque le formulaire est posté sur la page, vous pouvez vérifier quelle partie du formulaire a été remplie et exécuter une instruction préparée/créer votre propre déclaration à partir de cette page. Assurez-vous de le faire en toute sécurité.

1

Vous aurez probablement besoin de quelque chose comme

SELECT branchcode, ipadr, sn FROM sometable WHERE branchcode = "'.$_POST['branchcode'].'"'; 

En savoir plus ici: http://www.tizag.com/phpT/forms.php

edit: Mais cela pourrait être dangereux dans un environnement productif. Google pour injection SQL pour en savoir plus.

Questions connexes