Je cale sur un script en php

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [RÉGLÉ] Je cale sur un script en php

    Joomla 3.5.1 (non mis à jour faute de php en version 5 et non 7), Linux Ubuntu

    Dans un même script -article Joomla rédigé en php encadré par les balises "sourcerer"-, je décris un formulaire html et son traitement php. Il fonctionne très bien jusqu'à l'affichage d'un tableau de résultats.
    À la lecture de ces résultats, je dois proposer à l'utilisateur de "saisir" le matricule placé au début de la ligne qu'il souhaite exploiter. Et je dois ensuite traiter cette variable qu'il vient de saisir.
    Mon problème : Je bute complètement sur la saisie de ce code. J'ai beau décrire un second et mini formulaire -avec une seule question-, aucun traitement suivant ne s'exécute dès que l'utilisateur envoie son code saisi comme si le contenu de la variable était vide, non conforme, etc... Voici le code de ce second formulaire :

    Code PHP:
    <?php

    if (($membre == "O") && ($nb>0) && ($aff>0))  {

    ?>

    <form method="post" name="forme2">

    <fieldset>

    <label><span style="color:blue; font-size:11px; line-height:110%;">Si vous souhaitez effectuer une pré-réservation, recopiez ici très précisément l'Identifiant trouvé au tout début de la ligne retenue dans le tableau de résultats (ou laissez vierge) </span> → <input type="text" id="matricule" name="matricule"></label>

    </fieldset>

    <input type="submit" class="btn btn-mini" name="ok" style="background-color:brown; color:white;" value="ok"> <br/>

    </form>

    <?php

    if(isset($_POST['ok'])) {

    $matricule htmlspecialchars((string) $_POST['matricule']);

    ...
    etc
    Et quelques instructions pour vérification, après la saisie du code, comme :

    Code PHP:
    echo "Code saisi = " $matricule;
    sleep(10); 
    ne s'exécutent pas (rien à l'écran). Hormis la saisie du code et son envoi, ce second formulaire semble transparent.

    remarque : rien ne s'exécute, mais rien ne casse (aucune erreur apparente, le script se termine proprement).

    Grand merci à celui d'entre vous qui me sortira vite de ce problème, sans nul doute bien simple pour un "spécialiste" de codage !
    Dernière édition par Visiteur à 01/11/2016, 16h54 Raison: solutionné

  • #2
    Re : Je cale sur un script en php

    Je viens de documenter ma question pour être plus facilement compris.
    Merci.

    Commentaire


    • #3
      Re : Je cale sur un script en php

      Aucune réponse ! Difficile à comprendre ...

      Commentaire


      • #4
        Re : Je cale sur un script en php

        Envoyé par lendrevi Voir le message
        Aucune réponse ! Difficile à comprendre ...
        Pourquoi ? Parce qu'il y a obligation de répondre dans la journée ? Personne ne m'a jamais expliqué cela et pourtant j'ai de la bouteille.

        Ce n'est pas avec une attitude de reproche et de trois posts en moins de 24 heures que tu vas donner envie à des *bénévoles* de t'aider. Et pour rappel, il existe une règle explicite sur l'interdiction de faire des "UP" aussi rapproché.
        Christophe (cavo789)
        Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be
        Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)​

        Commentaire


        • #5
          Re : Je cale sur un script en php

          Toutes mes sincères excuses si mon insistance est interprétée comme un reproche. Ce n'est absolument pas dans mes habitudes. Et bien habitué à ce type de forum, je suis tout à fait conscient et respectueux du caractère de bénévolat des intervenants et souvent de leur manque de disponibilité car pris par d'autres tâches extérieures.
          Je suis moi-même intervenant sur ce forum, aussi dévoué que possible. Mais je n'ai jamais reproché à quiconque de se montrer impatient. Je n'oblige personne à me répondre, simplement une sollicitation pour me dépanner.
          PS : mon second post n'était nullement un up. Mais l'ajout dans mon post initial d'un bloc de code afin d'être plus explicite. Par contre je regrette le troisième post effectivement mal venu. Excuses à tous.

          Commentaire


          • #6
            Re : Je cale sur un script en php

            Bonjour

            Tu as raison : j'ai vu ton troisième post, que j'ai assimilé à un reproche et j'ai vu que tu avais posté trois fois or, en effet, le second post est un complétement du premier.

            J'ai relu ta question et si j'ai bien compris, tu as écrit du code PHP toi-même (affiché via sourcerer) pour afficher un formulaire.
            Tu as un problème de récupération des données. Cela me semble parfaitement logique... Quand tu postes un formulaire; il y a deux choses à comprendre :

            1. Qui va recevoir les données ? Sous Joomla, le formulaire frontend est affiché au travers de la page index.php, se trouvant à la racine du site. Si tu ne fais rien de précis (tag "action" du formulaire) c'est donc index.php qui reçoit les données.
            2. Qui va afficher ton second formulaire ? Ce serait index.php, standard de Joomla or, évidemment, il ne le fait pas. Il te faut, en terminologie Joomla, un contrôleur, un script php de ton cru qui va donc recevoir les données (1) et qui va provoquer l'affichage du second formulaire.

            Ce que tu fais, si c'est de la gestion de formulaire, devrait se faire avec des composants de type formulaire (rsforms, breezingforms, ...) et non en code "sourcerer". Tu pourrais utiliser sourcerer pour poster un premier formulaire (voir tag action) mais tu ne sauras pas traiter un second formulaire.

            Bonne journée.
            Christophe (cavo789)
            Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be
            Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)​

            Commentaire


            • #7
              Re : Je cale sur un script en php

              Merci Christophe.
              Je me doutais bien d'une raison de ce type pour que l'exécution de mon second formulaire soit aussi transparente.
              Mais quand je parle d'un second formuaire, sans doute existe t-il une méthode plus simple et sans passer par un formulaire pour simplement : demander à l'utilisateur de saisir une simple valeur texte, et la récupérer (donc sans utiliser "form") ?
              Et là, malgré bien des recherches, je bute.
              ps : intégrer un composant tel que breezing form uniquement pour saisir une donnée et une seule me semble bien lourd, même si j'en comprends la finalité.
              Dernière édition par Visiteur à 01/11/2016, 10h28

              Commentaire


              • #8
                Re : Je cale sur un script en php

                Salut
                ton code me pose un pb technique.
                Es tu sur qu'un formulaire envoie le contenu du input type submit quand le formulaire est valide?

                Question que je ne me suis jamais pose. Je me sens con tout d'un coup.

                Juste pour faire le test, verifie l'existence de la variable $_POST['matricule'] au lieu de ok. Sur un malentendu....
                et pense a la detruire a la fin du code.

                ++
                Wis

                Commentaire


                • #9
                  Re : Je cale sur un script en php

                  @ Wismer :
                  le problème est identique que je teste l'existence de la variable "matricule" ou "ok".
                  cavo789 a raison : le second formulaire ne peut pas s'exécuter. Un seul formulaire dans un script !

                  Mais j'imagine bien qu'il existe un autre moyen très simple pour demander l'unique saisie d'un matricule et le traiter ensuite dans le script php, sans passer par un formulaire.
                  En attendant je ne connais pas d'autre méthode que le formulaire.
                  Merci.
                  Dernière édition par Visiteur à 01/11/2016, 10h38

                  Commentaire


                  • #10
                    Re : Je cale sur un script en php

                    De guerre lasse, je m'en sors en fusionnant mes 2 formulaires -pour n'en faire qu'un seul- même si au plan ergonomique ce n'est pas l'idéal.
                    Mais tout fonctionne bien ainsi.

                    Merci encore à Christophe (cf. cavo789) de m'avoir mis sur la bonne piste.

                    ps : je passe ce sujet en "résolu"

                    Commentaire


                    • #11
                      Re : Je cale sur un script en php

                      Va voir mon site https://send.aesecure.com pour voir si l'ergonomie te convient. Tu pourras penser qu'il y a plusieurs formulaires mais il y en a qu'un seul. Si c'est ça que tu recherches regarde le code source. L'aspect wizard est rendu possible grâce à un plugin jquery dont j'ai oublié le nom et , en cet instant, au départ de mon smartphone, je n'ai pas la possibilité de regarder.

                      S'il le faut je regarderai en soirée.
                      Christophe (cavo789)
                      Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be
                      Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)​

                      Commentaire


                      • #12
                        Re : Je cale sur un script en php

                        @ cavo789 :

                        Je viens de regarder ton questionnaire. C'est bien, mais je n'y trouve pas ma solution.
                        Quand j'écris que fusionner mes 2 formulaires ne donne pas un bon rendu ergonomique, c'est tout simplement parce-que la seule dernière saisie demandée -et qui était placée à juste titre dans mon second formulaire, n'a strictement aucune raison d'apparaître dès le départ de mon process et même si c'est en dernière position. En effet, cette dernière saisie n'a vraiment de raison que si le process qui précède a débouché sur des résultats alors affichés à l'écran (puisque je demande à l'utilisateur de saisir une info apparaissant dans les résultats !
                        Pour l'instant, je me contenterai donc de cette solution.

                        Merci encore pour ton aide, Christophe.

                        Commentaire

                        Annonce

                        Réduire
                        Aucune annonce pour le moment.

                        Partenaire de l'association

                        Réduire

                        Hébergeur Web PlanetHoster
                        Travaille ...
                        X