stocké pour une visite ultérieure
-----
stocké pour une visite ultérieure
Je ne comprend pas trop... une session php c'est mon index.php ? ET pour le tableau je ne sais pas comment faire...
Dans ce cas, il faut stocker dans un fichier ou dans une base de données, côté serveur PHP et le fichier index.php devra commencer par récupérer ces données stockées et les afficher en bas de page.stocké pour une visite ultérieure
Ouf, on y est arrivé !!!!!!!!!!!!!
Dernière modification par vande545 ; 27/03/2020 à 16h11.
Ça à l'air compliqué ? non ? Comment faire ?
C'est l'usage basique de PHP. Cherche comment stocker dans un fichier.Ça à l'air compliqué ? non ? Comment faire ?
Ça n'a rien de sorcier et c'est le b.a ba de la programmation !
Désolé mais j'ai du mal à trouver...
pour la session=> https://www.w3schools.com/php/php_sessions.asp
pour les tableaux => https://www.w3schools.com/php/php_arrays.asp ou https://www.php.net/manual/fr/language.types.array.php
Encore une fois, interroge et parcours ces sites qui sont la bible (ou presque) pour le php
Je viens de lire vos liens et je ne comprend toujours pas mieux...
J'ai aussi essayé ce tutoriel que je n'arrive meme pas... https://www.valhalla.fr/2005/09/25/c...-php-et-mysql/
essaie d'abord le stockage dans un fichier car la BDD MySQL, c'est un poil plus compliqué !J'ai aussi essayé ce tutoriel que je n'arrive meme pas...
Je n'ai pas compris comment faire le stockage dans un fichier
Actuellement, on a quand même l'impression que tu essaies chaque truc 3 minutes et qu'ensuite, tu viens en disant "je n'y suis pas arrivé" ou "je n'ai pas compris" sans donner plus de détails.
Ce n'est sans doute pas comme ça que tu vas y arriver.
va sur w3schools (l'un de mes derniers lien) et regarde sur le menu de gauche, cherche "fichier PHP créer/écriture" ou anglais "PHP file create/write" (tu remarqueras au dessus il y a "PHP File Open/Read", ça pourra servir aussi). Clique dessus et hop on t'explique avec un exemple.
Je te proposes un plan de travail (et vu le confinement, tu auras le temps...):
1. Installes Wamp server. Arrêtes de jouer avec des soft portables sans installations.
Wamp remplace le bon vieux EasyPHP, un peu plus pratique pour un débutant.
Il contient Apache (server web), l'interpreteur php, mysql (attention c'est Maria db par défaut), et un outil de gestion de la base bien connu : phpMyAdmin.
2. Tu peux ajouter MySql Workbench pour apprendre à concevoir une base.
3. Réflechis aux données que tu veux stockés (identifiant, nom, prénom, etc..).
Regardes comment faire un MCD (merise) pour représenter ces données.
Et en particulier ce qu'est une clé primaire (primary key).
4. Regardes comment on crées une base de données dans MySql, puis comment créer ta (tes) table(s), avec le bon type de données (MySql est trééés tolérant, voilà pourquoi je te le conseilles).
4. Inséres quelques lignes dans ta base avec phpMyAdmin.
Joues avec l'éditeur de requêtes pour récuperer ces données en sql.
(La requête select sans "critère" where...)
5. Étudies les <form> et les <table> en html.
En particulier le action et le method de la form et les différents <input> et autres <button> (les composants d'entrée utilisateur).
6. Récupéres dans la même page, en php, les valeurs envoyées via le formulare grâce au "tableau"
Contentes toi de les afficher dans un <p>, dans un premier temps.Code:$_POST[ ];
7. Étudies les boucles php (for)
Remplis un tableau de lignes bidon en utilisant une boucle for.
Ce serait bien que ces données soit simplement les données récupérées depuis le formulaire et répétées n fois.
8. Tentes de récuperer en php les données de ta table dans ta base.
(php pdo).
Affiches les lignes via une boucle, dans ton tableau.
9. Joues à inserer en sql, via l'editeur de requête de phpMyAdmin, de nouvelles données.
10. Insères depuis ton php les nouvelles données reçues depuis le formulaire dans ta base.
11. Intègres toutes ces nouvelles connaissances pour en faire un vrai projet.
Enjoy !
Dernière modification par Ikhar84 ; 27/03/2020 à 22h03. Motif: Fôtes de frappe !
J'ai glissé Chef !
Merci beaucoup pour votre aide cependant je cherche depuis plusieurs heures et je commence vraiment à fatiguer...J'ai finalement décidé de changer car je trouve ça trop dure, je voudrai demander le nom, prénom, l'age et la date à laquelle ils veulent venir (à l’événement), ma question est donc juste la suivante s'il vous plait
comment faire en sorte que si l'utilisateur entre une date autre que celles entre le 1 et 15 avril 2020, reçoit une erreur qui dit qu'il faut choisir une date pendant l’événement
et afficher la phrase si tout a été rentré : [nom][prenom], vous avez bien était inscrit le[date] et vous devrez payer [10$ si l'utilisateur à plus de 40 ans ou 20$ si il a moins de 40ans]
Fais quelque chose d'encore plus simple, simplifie au maximum jusqu'à ce que tu puisse faire le truc toi tout seul sans aucune aide, par exemple fais juste ça :
- le système affiche "Saisissez le mot toto"
- si la personne a saisi "toto" le système affiche "Gagné!"
- si elle saisie autre chose le système affiche "Perdu!"
Quand tu auras fait ça, tu seras content de maîtriser le truc, et tu pourras compliquer : saisir le nom, prénom, une date, écrire les données dans une base etc.
Cette partie là, tu devrais la faire en Javascript en faisant en sorte que lorsque les 3 champs de dates (j m a) sont rempli, le programme teste la date.comment faire en sorte que si l'utilisateur entre une date autre que celles entre le 1 et 15 avril 2020, reçoit une erreur qui dit qu'il faut choisir une date pendant l’événement
Ça ressemblerait à ça :
- mettre un id="nom quelconque" dans les inputs (ce n'est pas obligatoire mais le code JS est plus simple avec id qu'avec name)
- lorsque date est rempli : JS teste si c'est égal à 2020 ; si non, sortie du programme avec un message à l'utilisateur. Si oui, test du mois puis du jour de la même manière que l'année
(tu peux aussi réunir les trois champs pour transformer l'ensemble en date et JS verifiera la date unique mais ce n'est pas plus simple)
- si les tests de date sont ok, JS écrit dans une <div>...</div> actuellement laissée vide dans le code HTML
Cet intermède JS n'empêchera pas de continuer en PHP pour stocker tout ça !
Tout-à-fait, et mon petit exemple peut être fait en Javascript, c'est même conseillé.
Par contre, pour contrôler un mot de passe, par exemple, pas question de faire cela en Javascript, car ce serait une faille de sécurité, car le Javascript est exécuté en local. Il faut impérativement passer par le serveur, qui va contrôler que le mot de passe tapé par l'utilisateur, qui est transmis crypté sur le web, donne le même résultat de décryptage que celui qui est stocké (également crypté) dans la base.
Ce ne serait pas plus facile avec un input date au lieu de trois champs textes ? Cela donne visualement un calendrier (de la forme d'un date picker), et il suffit en js de valider que la "value" soit dans le bon interval...
J'ai glissé Chef !
C'est sûr qu'il y aurait moins de code à écrire mais manipuler des dates pour un débutant, je ne crois pas que ce soit simple ?Ce ne serait pas plus facile avec un input date au lieu de trois champs textes ? Cela donne visualement un calendrier (de la forme d'un date picker), et il suffit en js de valider que la "value" soit dans le bon interval...
(je n'ai jamais fait en JS)
Ça sera un poil plus complexe que
C'est certain...Code:if (document.getElementById("annee").value == 2020)
J'ai glissé Chef !
J'aimerai bien le faire en php, les plus important sont nom, prenom et age(et après la date), d'abord (si c'est par ça qu'il faut commencer) pour commencer comment faire pour qu'un message s'affiche ou le cadre soit rouge si la date ou nom ou prenom n'a pas été rentré et donc que la case est vide ?
-Après il faut faire en sorte que le nombre qui s'affiche dépend de l'age de la personne (moins de 40 ans 20$/plus 10$)
-et ensuite la date
A le dire ça à l'air facile mais ce n'est pas le cas... Je cherche à ce que le code soit le plus facile possible à comprendre et à faire tant qu'il fonctionne bien
Je cherche depuis quelques heures et j'en suis toujours au meme point (ou presque), j'ai passé je ne sais combien d'heure juste pour une incription...
J'ai trouvé ce code que j'ai un peu modifié, il fonctionne mais je le trouve dur... je prefere ne pas l'utiliser...
Code HTML:<!DOCTYPE HTML> <html> <head> <style> .error {color: #FF0000;} </style> </head> <body> <?php // define variables and set to empty values $nameErr =""; $name = ""; if ($_SERVER["REQUEST_METHOD"] == "POST") { if (empty($_POST["name"])) { $nameErr = "Name is required"; } else { $name = test_input($_POST["name"]); } } if ($_SERVER["REQUEST_METHOD"] == "POST") { if (empty($_POST["name"])) { $nameErr = "Name is required"; } else { $name = test_input($_POST["name"]); } } function test_input($data) { $data = htmlspecialchars($data); return $data; } ?> <h2>PHP Form Validation Example</h2> <p><span class="error">* required field</span></p> <form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"> Name: <input type="text" name="name"> <span class="error">* <?php echo $nameErr;?></span> <br><br> <input type="submit" name="submit" value="Submit"> </form> <?php echo "<h2>Your Input:</h2>"; echo $name; echo "<br>"; ?> </body> </html>
Je commence vraiment à désespérer... vous pensez que je ne fait rien mais j'essaye vraiment de chercher (la preuve mon site n'a pas avancé du tout depuis 3 jours complets !)
J'ai l'impression que ce que tu affiches est composé de briques de code copiées-collées.Je ne vois pas dans ce code «la patte» d'un débutant, hormis l'assemblage de ces briques.
Je n'ai pas l'impression que tu aies suivi un cours structurés. Ton code ne donne pas ce sentiment ?
Ici, on considérera toujours que tant que tu n'as pas compris la base du langage, ça ne sert à rien de faire à ta place.
Je pense aussi (et ait déjà dit) en effet que le principal problème est le manque de méthode. C'était déjà le cas au début pour le non fonctionnement de uwamp remplacé par laragon sans comprendre ce qui n'allait pas.J'ai l'impression que ce que tu affiches est composé de briques de code copiées-collées.Je ne vois pas dans ce code «la patte» d'un débutant, hormis l'assemblage de ces briques.
Je n'ai pas l'impression que tu aies suivi un cours structurés. Ton code ne donne pas ce sentiment ?
Ici, on considérera toujours que tant que tu n'as pas compris la base du langage, ça ne sert à rien de faire à ta place.
Suivre un cours structuré est effectivement une bonne idée.
Et contrairement à ce que tu dis, ce code ne peux pasfonctionner.
Les quotes (guillements double) ne peuvent pas fonctionner.Code:action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
Il faut des guillemets simple (apostrophes) à l'intérieur.
De plus, tu peux largement simplifier, tu t'es rendu compte toi-même que l'attribut action= pouvait rester vide pour renvoyer à la même page, pas obligé d'utiliser php_self dans un premier temps.
Au lieu de t'acharner avec des fragments de code pioché au pif, cherches des cours, des liens t'on été donné, procèdes par petit pas, au final tu auras gagné et du temps, et des compétences.
Dans quel cadre travailles-tu ?
Projet/exercice scolaire ?
Là tu attends clairement du tout cuit.
J'ai glissé Chef !
Oui exercice scolaire...