Système de paramètre
- Accueil
- Forum
- Programmation
- PHP
- Système de paramètre
neecride Le 6 avril 2016 à 20:43 (Édité le 25 janvier 2019 à 17:50)
Voila je cherche a créer un système pour généré une chier de paramètre comme le slogan, title, positionnement des sidebar etc...
ça fais un moment que je cherche la bonne pratique mai voila ça foire toujours.
En gros je prend l'exemple de wordpress ou l'id 1 est égal au slogan et le namsite est égal a l'id 2 en base de donnée.
la tables ce structure comme cela sur wordpress
option_id .. (bigint 20)
option_name .. (varchar 200) exemple : slogan
option_value .. (longtext) exemple : slogan content
autoload .. (varchar 20 default "yes")
Je veut pouvoir créer et éditer des paramètre mai la je suis perdu; comment fait wordpress dans le sens ou moi pour éditer je passe par GET pour éditer une table donc c'est facile j'édite "where id" sauf que la on a un id par paramètre comment éditer le bon a chaque foi ?
Imaginons je créer le slogan :
option_id = 1
option_name = slogan
option_value = slogan content
autoload = yes
Dans le meilleur des monde quand je veut éditer je passe l'id en GET et j'update ( que la value le nom ne changera jamais ni l'id ) donc la je connais l'id et le nom de l'option, seul sa valeur change jusque la on est OK !!
Mais si j'ai a la fois le nom, la position des sidebar, une citation et j'en passe.... comment faire sur un seul form edit pour édité la bonne id a chaque fois de plus comme elle est en "primary auto" sans le GET il va me créer un option a chaque fois.
ensuite il faut pouvoir en ajouté pour de future ajouts !!
Vous voyez le topos avez vous un idée ?
merci 😀
julienb Le 6 avril 2016 à 21:10 (Édité le 1 janvier 1970 à 01:00)
je vais essayer de t'aider mais je ne suis pas sûr d'avoir tout compris donc n'hésite pas à me dire si je réponds un peu à côté.
Je veut pouvoir créer et éditer des paramètre mai la je suis perdu; comment fait wordpress dans le sens ou moi pour éditer je passe par GET pour éditer une table donc c'est facile j'édite "where id" sauf que la on a un id par paramètre comment éditer le bon a chaque foi ?Si j'ai bien compris, il faudrait que dans la partie admin de ton site, tu aies une page ou tu récupères tous les paramètres que tu as enregistré dans ta base de données avec un bouton editer à côté de chaque qui renvoit vers param/edit/id par exemple. Cette page t'afficherait un formulaire qui contient les données enregistrées de ton paramètre à modifier option_name, option_value, autoload, ce que tu veux... sauf l'id qui serait dans un input de type hidden si besoin de façon à ne pas pouvoir le modifier et en validant ce formulaire là, ça mettrait à jour uniquement ce que tu as besoin et ça laisserait les autres valeurs non modifiées.
Pour créer des paramètres supplémentaires, tu te fais un bouton créer sur ta page avec tous tes paramètres qui renvoit vers une page qui affiche le même formulaire mais complètement vide et au lieu d'appeler une fonction pour update ta base de données, tu fais un insert.
Mais si j'ai a la fois le nom, la position des sidebar, une citation et j'en passe.... comment faire sur un seul form edit pour édité la bonne id a chaque fois de plus comme elle est en "primary auto" sans le GET il va me créer un option a chaque fois.Ca revient à ce que je t'ai dit plus haut, tu peux faire une requète select en fonction de l'id de ton paramètre qui te renvoit toutes les valeurs du paramètre à modifier et afficher le tout dans un formulaire de façon à pouvoir modifier la valeur que tu souhaites.
neecride Le 7 avril 2016 à 18:00 (Édité le 1 janvier 1970 à 01:00)
Quand je modifie un champ il devra savoir a qu'elle ID correspond ce champ vise vers ça pour tous les autre !
Exemple j'ai 2 champ le title et le slogan
id-1 Value = titre de mon sitesi je ne veut updater que l'un ou l'autre en utilisant q'une seul requête sans le "GET id" et la je ne sais pas comment faire.
id-2 Value = slogan de mon site
julienb Le 9 avril 2016 à 02:35 (Édité le 1 janvier 1970 à 01:00)
neecride Le 11 avril 2016 à 00:27 (Édité le 1 janvier 1970 à 01:00)
Je pense être sur une piste avec dans la requête :
ON DUPLICATE KEY UPDATEmai je ne sais pas trop comment m'y prendre pour l'insert et l'update sachant qu'un paramètre ne peut pas exister 2 fois.
Je suis donc toujours a le recherche d'un idée merci ! faut dire que moi et la doc mysql ça fait 2