Bonjour à tous
J'ai une page web qui utilise le HTML (index.html) et JavaScript (calcul.js) puis le reste en CSS et jQuery pour la mise en page
La page est une calculatrice d'engrais de produits pour le gazon créer avec des champs de formulaire et un bouton calculer

Site web calculatrice: http://bookgazon.hebergratuit.net/calcul/

Pour ajouter, modifier ou supprimer chaque produit et leurs valeurs je suis obliger de passer par le code source de la page calcul.js.

Visuel code source (index.html / calcul.js / style.css): https://codepen.io/asp2p/pen/LLgmmx

Pour ajouter un nouveau produit
je suis obliger d'ouvrir le fichier calcul.js et d'ajouter une nouvelle ligne
( 3eme ligne ci-dessous // Nouveau produit
var produits = [
// Agrosil LR
{'produit':'Agrosil LR','quantite':120,'surface':1,'description':"Engrais améliorateur de sol agrosil améliore efficacement le sol, stimule le système racinaire pour le gazon et toutes les plantes du jardin.",'lien':'https://www.gazoneo.fr/produit/agrosil-ameliorateur-sol/','unite':'gr','outil':'epandeur','type':'non utilisé','semis':0,'sursemis':0,'microregarnissage':0,'unmois':0,'troismois':0},

// Algifol Green
{'produit':'Algifol Green','quantite':5,'surface':10,'description':"Puissant stimulant gazon Algifol Green est un concentré d’algues biologiques qui s’utilise en quantités minimales pour un résultat stupéfiant !",'lien':'https://www.gazoneo.fr/produit/algifol-green-stimulant-gazon/','unite':'ml','outil':'pulverisateur','type':'non utilisé','semis':0,'sursemis':0,'microregarnissage':0,'unmois':0,'troismois':0},

// Nouveau produit
{'produit':'Nouveau Produit','quantite':30,'surface':1,'description':"Descriptif du nouveau produit !",'lien':'https://www.gazoneo.fr/produit/nouveau-produit/','unite':'gr','outil':'epandeur','type':'semence','semis':30,'sursemis':15,'microregarnissage':5,'unmois':10,'troismois':30}
];

Pour modifier je suis obliger d'ouvrir le fichier calcul.js et de modifier les valeurs comme ceci

AVANT ( 'quantite':5,'surface':10, )
var produits = [
// Algifol Green
{'produit':'Algifol Green','quantite':5,'surface':10,'description':"Puissant stimulant gazon Algifol Green est un concentré d’algues biologiques qui s’utilise en quantités minimales pour un résultat stupéfiant !",'lien':'https://www.gazoneo.fr/produit/algifol-green-stimulant-gazon/','unite':'ml','outil':'pulverisateur','type':'non utilisé','semis':0,'sursemis':0,'microregarnissage':0,'unmois':0,'troismois':0},
];


APRES 'quantite':50,'surface':100,
var produits = [
// Algifol Green
{'produit':'Algifol Green','quantite':50,'surface':100,'description':"Puissant stimulant gazon Algifol Green est un concentré d’algues biologiques qui s’utilise en quantités minimales pour un résultat stupéfiant !",'lien':'https://www.gazoneo.fr/produit/algifol-green-stimulant-gazon/','unite':'ml','outil':'pulverisateur','type':'non utilisé','semis':0,'sursemis':0,'microregarnissage':0,'unmois':0,'troismois':0},
];


Pour supprimer j'ouvre le fichier calcul.js et je supprime simplement la ligne
// Algifol Green
{'produit':'Algifol Green','quantite':[b]5[/b],'surface':[b]10[/b],'description':"Puissant stimulant gazon Algifol Green est un concentré d’algues biologiques qui s’utilise en quantités minimales pour un résultat stupéfiant !",'lien':'https://www.gazoneo.fr/produit/algifol-green-stimulant-gazon/','unite':'ml','outil':'pulverisateur','type':'non utilisé','semis':0,'sursemis':0,'microregarnissage':0,'unmois':0,'troismois':0},


Je doit dire que c'est assez pénible ( utilisation du logiciel ftp, transférer le fichier vers mon ordi, faire la modification, re transférer les fichiers vers le ftp, et vérifier qu'il n'y est pas d'erreur suite à l'effacement non voulu d'un ' ou d'une }
C'est pour cela qu'a se jours je souhaiterais faire une petite page admin avec des champs de formulaire pour pouvoir [u]ajouter / modifier / supprimer[/u] des produits
A titre d'exemple un peut comme se style la
upload/1499605559-65809-admin3.jpg
Donc je me dit qu'il va surement falloir passer par une base de donnée (sql)
pour faire un truc dans se genre la
upload/1499605417-65809-bddsql2.jpg
sauf que n'y connaissant rien en PHP/MySQL je voulais savoir si quelqu'un pourrait prendre un peut de sont temps pour me donner un petit coup de main afin que je puisse arriver à créer ça
je vous remercie par avance
Cordialement
Modifié par asp2p (09 Jul 2017 - 15:25)
Bonjour,

Cette histoire de présentation, c'est un peu ton choix personnel.
Celle que tu présentes n'est pas mal, mais il commence à avoir un peu trop de données sur une seule ligne, et on remarque par exemple que ta description et ton lien ne sont pas lisible au premier coup d’œil.
Il faudrait peut-être donc passer avec un système sur deux pages, avec une page de listing et l'autre un formulaire complet pour l'ajout et la modification.
Moi qui ne suis pas un grand amateur de bootstrap... pour un back-end vite fait, ça peut être pratique dans ton cas.

Après pour la persistance, soit une bonne vieille base, soit un bête fichier texte pourrait faire le job.
bootstrap sa m'a l'air pas mal compliquer car apparemment faut connaître sur le bout des doigts
je penser plus a une bdd sql avec un peut de php
sinon je vois pas comment faire avec un fichier texte.. tu peut m'en dire plus stp

au pire je penser sinon faire une liste déroulante avec le nom des produits dans cette liste
et faire comme avec la calculette ( si tu peut regarder tu essaye avec "agrosil LR", "algifol green" et "semence gazon re-semis"
en gros une fois le produit sélectionné sa affiche "les champs du produits"
mais a la verticale pour avec une meilleur visibilité grâce aux champs plus large
Modérateur
asp2p a écrit :
bootstrap sa m'a l'air pas mal compliquer car apparemment faut connaître sur le bout des doigts
je penser plus a une bdd sql avec un peut de php

Bootstrap est en gros juste une feuille de style qui te donne un thème par défaut. C'est très pratique pour les interfaces d'administration car le résultat est très rapidement lisible et beau. Cela te permet aussi de rapidement disposer tes éléments sur la page grâce à un système de colonnes.

Mais côté backend il faudra bien passer par une solution du type mysql/php, car bootstrap n'intervient pas dans le fonctionnel, seulement le visuel.
Bonjour,
asp2p a écrit :
au pire je penser sinon faire une liste déroulante avec le nom des produits dans cette liste
et faire comme avec la calculette ( si tu peut regarder tu essaye avec "agrosil LR", "algifol green" et "semence gazon re-semis"
en gros une fois le produit sélectionné sa affiche "les champs du produits"
mais a la verticale pour avec une meilleur visibilité grâce aux champs plus large

C'est exactement ce à quoi je pensais quand je parlais du système sur deux pages Smiley cligne

Mais même si c'est ce que l'on aime faire le plus, si tu veux mon avis, pars déjà sur la construction de ta base, et tu verras le design après.
SolidSnake a écrit :
Bonjour,

Cette histoire de présentation, c'est un peu ton choix personnel.
Celle que tu présentes n'est pas mal, mais il commence à avoir un peu trop de données sur une seule ligne, et on remarque par exemple que ta description et ton lien ne sont pas lisible au premier coup d’œil.
Il faudrait peut-être donc passer avec un système sur deux pages, avec une page de listing et l'autre un formulaire assurance chat complet pour l'ajout et la modification.
Moi qui ne suis pas un grand amateur de bootstrap... pour un back-end vite fait, ça peut être pratique dans ton cas.

Après pour la persistance, soit une bonne vieille base, soit un bête fichier texte pourrait faire le job.


Bonjour!
Je me suis demandé depuis des semaines comment mettre des images comme liens cliquable mais j'y ne le sais pas encore.
Merci!
Merci à toi karlbidule,

D'avoir émis une question totalement hors propos pour ajouter très discrètement un lien (avec l'attribut rel="nofollow") vers une page pour l'assurance de ton chat Smiley clown
je revient vers vous car sa fait plus d'une semaine et j'ai toujours pas compris par ou commencer pour faire la création de la base
j'ai regarder plusieurs site et lu des tonnes de pages mais a chaque fois sa me dit...

Créer une base de données MySQL ( oui sauf que c'est assez ambigu )
certain passe par du code, d'autres par phpmyadmin, d'autres utilise des mots de la langue française très très développer, enfin je m'y perd complètement et n'arrive pas a comprendre

après sa me parle des tables
mais encore une fois je comprend toujours pas comment faire pour pouvoir récupérer les infos formulaire admin pour que sa les modifie dans le fichier html

est ce que tu aurait une solution genre étape par étape pour éviter que je m'y perd stp
Ps: j'ai chercher et chercher avec Google mais c'est super complexe et l'anglais avec Google trad c'est pas se qu'il y a de plus magnifique au monde

j'espere qu'ont pourra me conseillé dans le meilleur du possible sinon je sais pas ou que je vais me retrouver dans cette affaire Smiley sweatdrop
Modifié par asp2p (14 Jul 2017 - 13:29)
Re
j'essai depuis les 3 jours de comprendre mais je peine vraiment
donc j'ai ouvert phpmyadmin puis je me demande si....

var produits = [
// Agrosil LR
  {'produit':'Agrosil LR','quantite':120,'surface':1,'description':"Engrais améliorateur de sol .",'lien':'https://www.bookgazon.fr/calcul/produit/agrosil-ameliorateur-sol/','unite':'gr','outil':'epandeur','type':'non utilisé','semis':0,'sursemis':0,'microregarnissage':0,'unmois':0,'troismois':0},
];


pour chaque infos ci-dessus ( produit, quantité, surface, description, liens, unite, outil, type, semis, sursemis, microregarnissage, unmois,troismois...
il faut que je créer une table pour chaque nom ci-dessus
ou alors il faut que je creer une table qui s'appel genre bddcalcul puis que j'ajoute des entrées avec chaque nom de produit ?

franchement c'est une usine a gaz phpmyadmin Smiley bawling
Bonjour,

Au plus simple, tu n'auras besoin que d'une seule table pour ton projet, que tu appelles comme tu veux (e.g. "engrais").
Tu dois ensuite définir le nombre et le type de colonnes dans ta table, correspondant en gros à ce que tu as sur ta capture "Panel administration" que tu avais faite, plus une colonne pour un ID unique (donc 13+1 colonnes).
Je vois que les unités pour la quantité est différente selon le produit, donc tu devrais également rajouter une colonne "unite_quantite", à vérifier si tu n'as pas cette même problématique sur d'autres colonnes, parce que tout ce qui est numérique doit être défini en numérique dans ta table (e.g. quantité, surface, semis...)
voila donc j'ai creer une table qui s'appel "bddgazon"
dans cette table j'ai indiquer 14 colonnes
et dans chaque colonne j'ai indiquer les noms des divers infos
j'ai pas encore fini le boulot je m'en doute bien et je me doute que j'en suis loin

par contre j'ai pas trop saisie pour la colonne unite_quantite

pour le moment j'en suis rendu comme ci-dessous tu me conseil quoi car je me doute bien que j'ai du faire pas mal de connerie surtout dans "Type" mais bon j'essai de comprendre je fait des recherche mais c'est vachement compliquer comme truc

upload/1500399343-65809-bdd.jpg
http://zupimages.net/up/17/29/kcil.jpg

donc pour recapitulatif ( What's this colonne unite_quantite ? )
et si tu peut jeter un oeil pour les champs afin de voire si j'ai pas fait de trop de betise
Modifié par asp2p (18 Jul 2017 - 19:38)
Re salut
bon je pense avoir un peut avancer sur la base de donnée
par contre j'ai des questions qui me taraude l'esprit

( dans l'espace admin du site ) il y aura un formulaire avec un champ "quantite" ...

l'utilisateur pourra entrer une nouvelle quantité de produit puis validera en appuient sur un bouton valider
ainsi le nouveau résultat indiquer par l'utilisateur viendra écraser l'ancien résultat.... qui se trouve dans la colonne "quantite" de la bdd

sauf que je me demande quelle "type" je doit mettre pour la colonne quantite dans la bdd
car l'utilisateur sera lui même libre d'entrée des chiffres entier ou des chiffres décimal

lequel choisir ?
INT ( pour les nombres entier 1 2 3 4 5 6 etc )
DECIMAL ( pour les chiffres décimal 1.22 3.76 4.78 etc )

si je met quantite INT(2.8) sa m'affiche 3... normal car 2.8 est un chiffre decimal
donc j'ai penser a remplacer INT par DECIMAL
mais si après je veut changer "2.8" par "3" directement depuis l'espace admin du site sans devoir retournée dans la bdd....
est ce que 3 va pas s'affiché ainsi 3.0 ?

désolé je sais pas si j'explique sa correctement j’espère que se sera assez compréhensible Smiley murf