23.08.2004, 19:00 Salut
Je cherche un exemple simple d'un formulaire, avec :
.Une page html avec des champs de genre "nom", "prenom", etc... (des textfield, quoi)
.Une page php avec les scripts de recherche dans la base de données, permettant d'afficher les résultats de la recherche
J'ai déjà créé des tables dans ma bdd mysql et je voudrais pouvoir faire des recherches dessus
Les trucs que je trouve sur le net sont incomplets :|
En fait c'est pour voir comment ça marche pour les requetes, ensuite j'adapeterai à ce qu'il me faut
Merci |I hokutomarsouin
Formulaire recherche mysql
- hokutomarsouin
-
23.08.2004, 20:00 c sur que ca doit pas trop marcher si t'a mis des smiley :rollin
bon je regarde ce que j'ai mumuri cinemona.com
bon je regarde ce que j'ai mumuri cinemona.com
- mumuri
-
23.08.2004, 20:00 C'est incomplet ton truc.
Va voir sur le site de php, je crois qu'il y a des exempls pour des requêtes sql. dihap
Va voir sur le site de php, je crois qu'il y a des exempls pour des requêtes sql. dihap
- dihap
-
- hokutomarsouin
-
- mumuri
-
23.08.2004, 21:00 ok mais c'est quoi le code à mettre dans le submit du bouton ? il recharge la même page ? hokutomarsouin
- hokutomarsouin
-
- mumuri
-
24.08.2004, 11:00 tu trouveras la source ZIP ici ;) .


site.voila.fr/dede2215/projethokuto.zip
t'a une fonction de recherche
une fonction d'insertion
une fonction de selection
une fonction d'affichage ...
+ un peu de debuggage
par contre pas de fonction update et de fonction d'erreurs mumuri cinemona.com

hokuto

site.voila.fr/dede2215/projethokuto.zip
t'a une fonction de recherche
une fonction d'insertion
une fonction de selection
une fonction d'affichage ...
+ un peu de debuggage
par contre pas de fonction update et de fonction d'erreurs mumuri cinemona.com
- mumuri
-
24.08.2004, 13:00 merci bien pour tout ceci, mais je crois que j'ai un problème :
quand je vais dans install.php, j'ai juste des images avec du texte à coté, je peux rien cliquer
quand je vais dans index.php, j'ai aussi des images et du texte, mais on dirait que c'est le résultat d'une recherche parce qu'il y a écrit
marsouin
marsouin
marsouin
mumuri
4 noms trouvés
en fait je crois que le code apparait en tant que texte (SELECT * FROM `hokuto_user` WHERE`nom` LIKE 'nom' AND`details` LIKE 'detail' LIMIT 0 , 10) hokutomarsouin
quand je vais dans install.php, j'ai juste des images avec du texte à coté, je peux rien cliquer
quand je vais dans index.php, j'ai aussi des images et du texte, mais on dirait que c'est le résultat d'une recherche parce qu'il y a écrit
marsouin
marsouin
marsouin
mumuri
4 noms trouvés
en fait je crois que le code apparait en tant que texte (SELECT * FROM `hokuto_user` WHERE`nom` LIKE 'nom' AND`details` LIKE 'detail' LIMIT 0 , 10) hokutomarsouin
- hokutomarsouin
-
24.08.2004, 13:00 edite le fichier fonction.inc.php et mets la
variable $base['debug') à false
et tu n'auras plus les commentaires avec les images
les textes avec les images que tu vois te servent seulement a debbuger ton script, si t'a des erreurs sur la pages tu le verras dessuite ;) .
fais déja ca et tu comprendras ;)
(lis aussi la source de index.php pour te familiariser avec les fonction)
-----------
l'intérét c'est que tu peux facilement te mettre des repéres dans ton code grace a la fonction HOKUTO_PETITCANIF ainsi quand tu codes tu sais dessuite ou tu en est mumuri cinemona.com
variable $base['debug') à false
et tu n'auras plus les commentaires avec les images
les textes avec les images que tu vois te servent seulement a debbuger ton script, si t'a des erreurs sur la pages tu le verras dessuite ;) .
fais déja ca et tu comprendras ;)
(lis aussi la source de index.php pour te familiariser avec les fonction)
-----------
l'intérét c'est que tu peux facilement te mettre des repéres dans ton code grace a la fonction HOKUTO_PETITCANIF ainsi quand tu codes tu sais dessuite ou tu en est mumuri cinemona.com
- mumuri
-
24.08.2004, 17:00 je suis en train d'essayer de comprendre ton truc, ça a l'air pas trop trop compliqué
j'ai fait une pause car ils voulaient que je vérifie si mysql était bien installé sur leur serveur
Parce que j'ai installé phpMyAdmin sur leur serveur, et ça affiche
Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'
alors que sur ma machine, qui est sous windows bien entendu, ça marche sans problèmes. Et comme par hasard, easyphp n'existe pas sous linux
D"> hokutomarsouin
j'ai fait une pause car ils voulaient que je vérifie si mysql était bien installé sur leur serveur
Parce que j'ai installé phpMyAdmin sur leur serveur, et ça affiche
Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'
alors que sur ma machine, qui est sous windows bien entendu, ça marche sans problèmes. Et comme par hasard, easyphp n'existe pas sous linux
grin
- hokutomarsouin
-
24.08.2004, 18:00 Attend y'a un truc que je capte pas
Les fonctions que t'as mis dans tes exemples (insertion/effactement d'une donnée) elles se lancent à chaque fois que je lance le fichier index.php ? Parce que moi je vais le faire, mais avec des boutons genre insérer, supprimer. Là à chaque fois que je lance le fichier, il créé des fiches alors ? hokutomarsouin
Les fonctions que t'as mis dans tes exemples (insertion/effactement d'une donnée) elles se lancent à chaque fois que je lance le fichier index.php ? Parce que moi je vais le faire, mais avec des boutons genre insérer, supprimer. Là à chaque fois que je lance le fichier, il créé des fiches alors ? hokutomarsouin
- hokutomarsouin
-
24.08.2004, 19:00 oui le index.php c''est un exemple d'utilisation des fonctions que je t'ai faites ...
a toi d'appliquer ;) mumuri cinemona.com
a toi d'appliquer ;) mumuri cinemona.com
- mumuri
-
24.08.2004, 19:00 Pas facile de s'y retrouver avec les noms de fonction que t'as mis :rollin
T'aurais du laisser les noms de base :D hokutomarsouin
T'aurais du laisser les noms de base :D hokutomarsouin
- hokutomarsouin
-
24.08.2004, 20:00 c moi qu'est tout fait et je me suis couché a 2h du mat pour terminer, les fonctions ont été simplifié au maximum pour que t'es pas trop de mal à t'en servir (en plus j'ai posté la source sur phpcs et je me suis fait censuré et y'a un gars qui m'a dit que je faisais pitié lol)
je te conseille de te faire un petit papier avec le nom de chaque fonction et son utilité ;)
en plus aprés y'a des trucs mémo technique milleetuncoupdelagrandeourse y'a un chiffre donc c'est pour compter ...
mumuri cinemona.com
je te conseille de te faire un petit papier avec le nom de chaque fonction et son utilité ;)
en plus aprés y'a des trucs mémo technique milleetuncoupdelagrandeourse y'a un chiffre donc c'est pour compter ...
mumuri cinemona.com
- mumuri
-
24.08.2004, 22:00 mdr, fallait pas te donner tant de peine :)
j'ai lu que tu vouvoyais donc je pensais que c'était un truc que t'avais récupéré hokutomarsouin
j'ai lu que tu vouvoyais donc je pensais que c'était un truc que t'avais récupéré hokutomarsouin
- hokutomarsouin
-
25.08.2004, 10:00 a l'originie ct aussi pour diffuser sur phpcs, comme j'avais fait un bon truc je pensais que ca pouvez intéréssé des gens ;) .
ceci dit pour ton truc a bouton .. insérer etc
tu as toous cequ'il faut dans l'exemple
pour chaque bouton tu fais un formulaire
tu valides le formulaire et tu recupéreres les variables
avec hokuto_no_post
si 'insertion' alors HOKUTO_PLANCHEAPAIN
si 'effacement' alors HOKUTO_A_PAIN
etc mumuri cinemona.com
ceci dit pour ton truc a bouton .. insérer etc
tu as toous cequ'il faut dans l'exemple
pour chaque bouton tu fais un formulaire
tu valides le formulaire et tu recupéreres les variables
avec hokuto_no_post
si 'insertion' alors HOKUTO_PLANCHEAPAIN
si 'effacement' alors HOKUTO_A_PAIN
etc mumuri cinemona.com
- mumuri
-
25.08.2004, 12:00 ah ouais faut récupérer les variables dans le fichier php... parce qu'en fait je m'étais fait un propre exemple, avec un formulaire html contenant un textfield, et le fichier php qui était censé affiché les résultats ne voyait pas les variables (il mettait "notice : undefined variable")
Je vais suivre ton fichier pas à pas et faire un mémo comme tu dis hokutomarsouin
Je vais suivre ton fichier pas à pas et faire un mémo comme tu dis hokutomarsouin
- hokutomarsouin
-
- hokutomarsouin
-
25.08.2004, 19:00 Mumu y'a un truc que je capte pas
Dans ta fonction de recherche HOKUTO_NO_POST, pourquoi t'as besoin de NANTO_DE_VISON, HOKUTO_DE_CUISINE, et HOKUTO_SUIVANT ?
NANTO_DE_VISON = attribue à la variable "$attaque" la valeur de la clé que tu cherches dans ta table
HOKUTO_DE_CUISINE = connection à la base et appel au débuggage (est-ce nécessaire si je met tout dans un fichier avec la connexion en début de page ?)
HOKUTO_SUIVANT = au cas où on a plusieurs résultats
C'est bien ça ? hokutomarsouin
Dans ta fonction de recherche HOKUTO_NO_POST, pourquoi t'as besoin de NANTO_DE_VISON, HOKUTO_DE_CUISINE, et HOKUTO_SUIVANT ?
NANTO_DE_VISON = attribue à la variable "$attaque" la valeur de la clé que tu cherches dans ta table
HOKUTO_DE_CUISINE = connection à la base et appel au débuggage (est-ce nécessaire si je met tout dans un fichier avec la connexion en début de page ?)
HOKUTO_SUIVANT = au cas où on a plusieurs résultats
C'est bien ça ? hokutomarsouin
- hokutomarsouin
-
25.08.2004, 19:00 HOKUTO_NO_POST : fonction qui permet de récupérer les variables passer dans un formulaire
NANTO_DE_VISON : fonction qui permet de généré la requete SQL de recherche $attaque (select * where tel truc = tel autre truc)
HOKUTO_DE_CUISINE : fonction qui permet d'éffectuer une requete vers la base ($coup).
HOKUTO_SUIVANT: fonction qui permet de se déplacer à la ligne suivante dans notre requete
fo comprendre la philosophie du hokuto no base aussi ,
à l'origine la variable HIM (qui permet l'utilisation de base mysql) est un méchant, ton but au travers de la page est de la détruire. Pour cela tu vas générer des attaques (des requetes) et lancer ses attaques grace a des coups ($coup). , récupérer le résultat du coup pour l'afficher et à la fin tu detruit ta base (tu ferme ta base) avec hokuto_finish(him)
LA CONNECTION A LA BASE EST AUTOMATIQUE DANS MON CODE ;) , c'est justement tout l'intérét par rapport au script classique ou il faut se connecter a chaque fois .
HOKUTO_PETITCANIF est la fonction debbugage que tu peux appeler dans ton code; (méme celui de la page principale)
ca peut etre trés intéréssant si tu sait plus ou t'en ai. par exemple aprés la fonction NANTO_DE_VISION , tu peux faire un HOKUTO_PETITCANIF("génération de la requete de recherche")
mumuri cinemona.com
NANTO_DE_VISON : fonction qui permet de généré la requete SQL de recherche $attaque (select * where tel truc = tel autre truc)
HOKUTO_DE_CUISINE : fonction qui permet d'éffectuer une requete vers la base ($coup).
HOKUTO_SUIVANT: fonction qui permet de se déplacer à la ligne suivante dans notre requete
fo comprendre la philosophie du hokuto no base aussi ,
à l'origine la variable HIM (qui permet l'utilisation de base mysql) est un méchant, ton but au travers de la page est de la détruire. Pour cela tu vas générer des attaques (des requetes) et lancer ses attaques grace a des coups ($coup). , récupérer le résultat du coup pour l'afficher et à la fin tu detruit ta base (tu ferme ta base) avec hokuto_finish(him)
LA CONNECTION A LA BASE EST AUTOMATIQUE DANS MON CODE ;) , c'est justement tout l'intérét par rapport au script classique ou il faut se connecter a chaque fois .
HOKUTO_PETITCANIF est la fonction debbugage que tu peux appeler dans ton code; (méme celui de la page principale)
ca peut etre trés intéréssant si tu sait plus ou t'en ai. par exemple aprés la fonction NANTO_DE_VISION , tu peux faire un HOKUTO_PETITCANIF("génération de la requete de recherche")
mumuri cinemona.com
- mumuri
-
25.08.2004, 20:00 une chose aussi NANTO de vison n'est pas une technique du HOKUTO (tu le sais mieux que moi d'ailleur)
Ce qui se traduit par NANTO DE VISON est un générateur de requete, il génére une requete a partir de chaines de caractére prédéfini (la base de donnée n'intervient pas )
Seulement j'ai préféré regroupé ca dans le fichier fonction puisque ca pouvait etre utile.
(traduction : Ken doit savoir se servir des 2 techniques de combat pour pouvoir survivre)
mumuri cinemona.com
Ce qui se traduit par NANTO DE VISON est un générateur de requete, il génére une requete a partir de chaines de caractére prédéfini (la base de donnée n'intervient pas )
Seulement j'ai préféré regroupé ca dans le fichier fonction puisque ca pouvait etre utile.
(traduction : Ken doit savoir se servir des 2 techniques de combat pour pouvoir survivre)
mumuri cinemona.com
- mumuri
-
25.08.2004, 21:00 Ouais mais ça m'embrouille l'esprit si tu mets des trucs supplémentaires aussi :rollin
Surtout que toutes ses fonctions s'appellent entre elles :p
En clair, si j'ai juste besoin de faire une recherche dans la base de données, voilà la procédure dans l'ordre :
1) HOKUTO_NO_POST récupère les valeurs du formulaire
2) NANTO_DE_VISON génère une requête pour ces valeurs, requête qui va être insérée dans la variable "$attaque"
3) HOKUTO_DE_CUISINE exécute la requête "$attaque" que NANTO_DE_VISON lui a transmise. La connexion à la base de données se fait à ce moment là. Ensuite HOKUTO_DE_CUISINE retourne le résultat de la requête via la variable "$COUP" ("$Result_Requete" n'est qu'une variable locale pour la fonction, n'est ce pas ?)
4) On affiche le résultat de la requête. Dans une boucle, HOKUTO_SUIVANT vérifie si il y a d'autre résultats. Tant que HOKUTO_SUIVANT trouve d'autres résultats, on les imprime
5) On ferme la base avec HOKUTO_FINISH
En résumé, tout le processus se passe dans la fonction HOKUTO_NO_POST car c'est elle qui fait appel à toutes les autres fonctions
Si l'on veut uniquement faire des recherches (pas d'ajout/suppr/modif), les fonctions non nécessaires sont Milleetuncoupdelagrandeourse, HOKUTO_A_HUITRE, HOKUTO_A_BEURRE, HOKUTO_PLANCHE_A_PAIN, HOKUTO_SUISSE, HOKUTO_A_PAIN, HOKUTO_PETITCANIF
(je dis pas que je vais pas les utiliser, je veux faire ça étapes par étapes lol)
Est-ce que j'ai dit des conneries ? :lol hokutomarsouin
Surtout que toutes ses fonctions s'appellent entre elles :p
En clair, si j'ai juste besoin de faire une recherche dans la base de données, voilà la procédure dans l'ordre :
1) HOKUTO_NO_POST récupère les valeurs du formulaire
2) NANTO_DE_VISON génère une requête pour ces valeurs, requête qui va être insérée dans la variable "$attaque"
3) HOKUTO_DE_CUISINE exécute la requête "$attaque" que NANTO_DE_VISON lui a transmise. La connexion à la base de données se fait à ce moment là. Ensuite HOKUTO_DE_CUISINE retourne le résultat de la requête via la variable "$COUP" ("$Result_Requete" n'est qu'une variable locale pour la fonction, n'est ce pas ?)
4) On affiche le résultat de la requête. Dans une boucle, HOKUTO_SUIVANT vérifie si il y a d'autre résultats. Tant que HOKUTO_SUIVANT trouve d'autres résultats, on les imprime
5) On ferme la base avec HOKUTO_FINISH
En résumé, tout le processus se passe dans la fonction HOKUTO_NO_POST car c'est elle qui fait appel à toutes les autres fonctions
Si l'on veut uniquement faire des recherches (pas d'ajout/suppr/modif), les fonctions non nécessaires sont Milleetuncoupdelagrandeourse, HOKUTO_A_HUITRE, HOKUTO_A_BEURRE, HOKUTO_PLANCHE_A_PAIN, HOKUTO_SUISSE, HOKUTO_A_PAIN, HOKUTO_PETITCANIF
(je dis pas que je vais pas les utiliser, je veux faire ça étapes par étapes lol)
Est-ce que j'ai dit des conneries ? :lol hokutomarsouin
- hokutomarsouin
-
25.08.2004, 21:00 c pas pour critiquer, mais si tu avais mis des noms un peu plus parlant je pense qu'il comprendrait mieux
au boulot j'ai du refaire tout un programme, ça a été plus vite que d'adapter celui existant, c'était des fonctions portant des noms du genre (et c pas une blague ce nom, il y était vraiment) vrf_l_f_004_euro_counter_reset_3_9() avec bien entendu aucun commentaire (une cinquantaine de fonctions comme ça)
j'avais pas envie de passer deux semaines a voir quelle fonction fait quoi (en plus j'avais pas deux semaines pour faire le prog lol)
enfin, tout ça pour dire que donner des noms ayant un rapport avec le but de la fonction est bien plus pratique Bigraph
au boulot j'ai du refaire tout un programme, ça a été plus vite que d'adapter celui existant, c'était des fonctions portant des noms du genre (et c pas une blague ce nom, il y était vraiment) vrf_l_f_004_euro_counter_reset_3_9() avec bien entendu aucun commentaire (une cinquantaine de fonctions comme ça)
j'avais pas envie de passer deux semaines a voir quelle fonction fait quoi (en plus j'avais pas deux semaines pour faire le prog lol)
enfin, tout ça pour dire que donner des noms ayant un rapport avec le but de la fonction est bien plus pratique Bigraph
- Bigraph
-
25.08.2004, 21:00 ouep en méme temps j'ai mis des commentaires ;) ( et une exemple de base pour chaque fonction)
pour ce qui est du HOKUTO_NO_POST il sert juste à récupérer les variables passé par un formulaire (aucun rapport avec la base de donnée)
et autrement t'a raisoon pour tout le reste (mise a part que je n'ai pas fait de fonction de modification) au pire tu veux pas faire de fonction UPDATE toi méme tu peux faire un effacage puis une insertion
Voila les descriptif des fonctions
Milleetuncoupdelagrandeourse -> permet de compter le nombre d'enregistrement de la derniére requéte
HOKUTO_AHUITRE ->
cette fonction permet de récupérer la valeur d'une
colonne par rapport a une requete prédéfini
HOKUTO_ABEURRE -> permet de vider une table
HOKUTO_PLANCHEAPAIN ->
permet de faire des insertions de données
(un exemple est fourni dans index.php)
HOKUTO_SUISSE->
permet de récupérer une valeur d'une colonne a partir
d'un identifiant
// ex
// TBL_HOKUTO
// id @ nom @
// 3 @ mars@
// HOKUTO_SUISSE("TBL_HOKUTO","nom","id",3) renvoie mars
HOKUTO_APAIN -> permet d'éffacer une ligne dans une base
(voir exemple)
HOKUTO_PETITCANIF -> permet de mettre des commentaires (utile pour le debbugage) ces commentaires ne s'affichent que si la variable $base['debug'] est mis à true.
remarque : toutes les fonctions de fonction.inc.php sont de la forme HOKUTO_ABCDE (il n'y a pas de _ dans ABCDE, autrement dit pas de HOKUTO_A_PAIN, mais HOKUTO_APAIN) mumuri cinemona.com
pour ce qui est du HOKUTO_NO_POST il sert juste à récupérer les variables passé par un formulaire (aucun rapport avec la base de donnée)
et autrement t'a raisoon pour tout le reste (mise a part que je n'ai pas fait de fonction de modification) au pire tu veux pas faire de fonction UPDATE toi méme tu peux faire un effacage puis une insertion
Voila les descriptif des fonctions
Milleetuncoupdelagrandeourse -> permet de compter le nombre d'enregistrement de la derniére requéte
HOKUTO_AHUITRE ->
cette fonction permet de récupérer la valeur d'une
colonne par rapport a une requete prédéfini
HOKUTO_ABEURRE -> permet de vider une table
HOKUTO_PLANCHEAPAIN ->
permet de faire des insertions de données
(un exemple est fourni dans index.php)
HOKUTO_SUISSE->
permet de récupérer une valeur d'une colonne a partir
d'un identifiant
// ex
// TBL_HOKUTO
// id @ nom @
// 3 @ mars@
// HOKUTO_SUISSE("TBL_HOKUTO","nom","id",3) renvoie mars
HOKUTO_APAIN -> permet d'éffacer une ligne dans une base
(voir exemple)
HOKUTO_PETITCANIF -> permet de mettre des commentaires (utile pour le debbugage) ces commentaires ne s'affichent que si la variable $base['debug'] est mis à true.
remarque : toutes les fonctions de fonction.inc.php sont de la forme HOKUTO_ABCDE (il n'y a pas de _ dans ABCDE, autrement dit pas de HOKUTO_A_PAIN, mais HOKUTO_APAIN) mumuri cinemona.com
- mumuri
-
- Discussions similaires
- Struts : autoriser un Zero dans un formulaire ...
- Formulaire de contact sur Spip