IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Génération d'un fichier xml


Sujet :

Langage PHP

  1. #21
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    318
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 318
    Points : 81
    Points
    81
    Par défaut
    j'ai placé session_start(); au debut et j'ai toujours la même erreur au niveau de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $chiffre=(isset($_POST['chiffre']))?$_POST['chiffre']):0;

    il me dit Syntaxe error, expected instance of? OR,XOR, AND, ?, ||, ....

  2. #22
    Membre émérite
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Points : 2 411
    Points
    2 411
    Par défaut
    Mea culpa,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $chiffre=(isset($_POST['chiffre']))?$_POST['chiffre']:0;

  3. #23
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    t'as un ) en trop relis toi...

    $chiffre=(isset($_POST['chiffre']))?$_POST['chiffre']):0;

  4. #24
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    318
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 318
    Points : 81
    Points
    81
    Par défaut
    Oui c'est vrai vous avez raison, voilà dans une page je stock la valeur saisie
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    <html><body>
    <form method="post" action="xml">
    Nombre : <input type="text" name="chiffre" size="12"><br>
    <input type="submit" value="OK">
    </form>
    <?php
    //$number = $_POST['number'];
     
            // Démarrage de la session
     
    // Récuperation du nombre ou 0 si non saisi
    $chiffre=(isset($_POST['chiffre']))?$_POST['chiffre']:0;
     
    // Mémorisation du nombre dans le tableau $_SESSION
    $_SESSION['chiffre']=$chiffre;
    ?>
    Puis dans une autre page, où j'ai besoin de cette variable je crée un formulaire dynamique en fonction de la valeur du variable chiffre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    <html><body>
     
    <form method="post" action="">
     
    <?php for($i=0; $i < $chiffre ; $i++){ ?>
     <fieldset>
           <legend>Nom [$i]</legend> <!-- Titre du fieldset -->
           Nom  :  <input type="text" name="name[]">
        </fieldset>
     
       <fieldset>
           <legend>Prenom </legend> <!-- Titre du fieldset -->
           Prenom : <input type="text" name="surname[]">
        </fieldset>
     
       <fieldset>
           <legend>Tel</legend> <!-- Titre du fieldset -->
           Tel : <input type="text" name="tel[]">
        </fieldset>
     
       <fieldset>
           <legend>Mail [$i]</legend> <!-- Titre du fieldset -->
            E-mail : <input type="text" name="mail[]">
        </fieldset>
     
     
     
    <?php } ?>
      <input type="submit" value="Go" />
    </form>
     
     </body></html>
    mais j'ai rien comme resultat, il me crée rien, comme si le contenu de la variable chiffre = 0.

  5. #25
    Membre émérite
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Points : 2 411
    Points
    2 411
    Par défaut
    On doit démarrer les sessions au début du script (avant tout affichage) afin de pouvoir accéder au tableau $_SESSION.

    Code à placer en haut des pages ayant besoin du nombre préalablement sauvegardé.
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    // Démarrage de la session
    session_start();

    Maintenant nous avons accès au tableau $_SESSION, on récupère la valeur dans $chiffre.

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    // Récuperation du nombre préalablement sauvegardé
    $chiffre=(isset($_SESSION['chiffre']))?$_SESSION['chiffre']:0;

  6. #26
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    318
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 318
    Points : 81
    Points
    81
    Par défaut
    Oui exactement, j'ai fait ce que tu m'as expliqué de faire, mais la variable chiffre contient toujours rien.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
     
    <?php
    // Démarrage de la session
    session_start();
     
    // Récuperation du nombre préalablement sauvegardé
    $chiffre=(isset($_SESSION['chiffre']))?$_SESSION['chiffre']:0;
    ?>
     
    <html><body>
     
    <form method="post" action="">
     
    <?php for($i=0; $i < $chiffre ; $i++){ ?>
     <fieldset>
           <legend>Nom [$i]</legend> <!-- Titre du fieldset -->
           Nom  :  <input type="text" name="name[]">
        </fieldset>
     
       <fieldset>
           <legend>Prenom </legend> <!-- Titre du fieldset -->
           Prenom : <input type="text" name="surname[]">
        </fieldset>
     
       <fieldset>
           <legend>Tel</legend> <!-- Titre du fieldset -->
           Tel : <input type="text" name="tel[]">
        </fieldset>
     
       <fieldset>
           <legend>Mail [$i]</legend> <!-- Titre du fieldset -->
            E-mail : <input type="text" name="mail[]">
        </fieldset>
     
     
     
    <?php } ?>
      <input type="submit" value="Go" />
    </form>
     
     </body></html>

  7. #27
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    318
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 318
    Points : 81
    Points
    81
    Par défaut
    j'ai fait un echo de ma variable que je récupère, elle m'affiche 0 alors que dans l'autre page j'ai saisie 5

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    // Démarrage de la session
    session_start();
     
    // Récuperation du nombre préalablement sauvegardé
    $chiffre=(isset($_SESSION['chiffre']))?$_SESSION['chiffre']:0;
     
        echo $chiffre;
     ?>

  8. #28
    Membre émérite
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Points : 2 411
    Points
    2 411
    Par défaut
    Dans la page où on saisie le nombre, nous avons
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form method="post" action="xml">
    Qu'est-ce que xml dans l'attribut action ?

    Quelle est la page déstinée à traiter les données du formulaire ?

    Celle où il devrait y avoir...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    // Démarrage de la session
    session_start();
     
    // Récuperation du nombre ou 0 si non saisi
    $chiffre=(isset($_POST['chiffre']))?$_POST['chiffre']:0;
     
    // Mémorisation du nombre dans le tableau $_SESSION
    $_SESSION['chiffre']=$chiffre;
    ?>
    ?

  9. #29
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    318
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 318
    Points : 81
    Points
    81
    Par défaut
    xml c'est une vue qui contient un index.phtml,

    voilà ce que j'ai mis dans une vue parametre (j'ai mis session_start(); tout en haut ) qui contient un champs pour savoir le nombre de formulaire à créer dans la page xml

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    <html><body>
    <form method="post" action="xml">
    Nombre : <input type="text" name="chiffre" size="12"><br>
    <input type="submit" value="OK">
    </form>
    <?php
    //$number = $_POST['number'];
     
            // Démarrage de la session
     
    // Récuperation du nombre ou 0 si non saisi
    $chiffre=(isset($_POST['chiffre']))?$_POST['chiffre']:0;
     
    // Mémorisation du nombre dans le tableau $_SESSION
    $_SESSION['chiffre']=$chiffre;
    ?>
                    </body></html>
    Quand je clique sur OK il me redirige vers la page xml, donc sur ce point c'est bon il y a pas de pb.

    et dans la vue xml je récupère la valeur chiffre pour créer des formulaire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    <?php
    // Démarrage de la session
    session_start();
     
    // Récuperation du nombre préalablement sauvegardé
    $chiffre=(isset($_SESSION['chiffre']))?$_SESSION['chiffre']:0;
     
         ?>
     
    <html><body>
     
    <form method="post" action="">
     
    <?php for($i=0; $i < $chiffre ; $i++){ ?>
     <fieldset>
           <legend>Nom [$i]</legend> <!-- Titre du fieldset -->
           Nom  :  <input type="text" name="name[]">
        </fieldset>
     
       <fieldset>
           <legend>Prenom </legend> <!-- Titre du fieldset -->
           Prenom : <input type="text" name="surname[]">
        </fieldset>
     
       <fieldset>
           <legend>Tel</legend> <!-- Titre du fieldset -->
           Tel : <input type="text" name="tel[]">
        </fieldset>
     
       <fieldset>
           <legend>Mail [$i]</legend> <!-- Titre du fieldset -->
            E-mail : <input type="text" name="mail[]">
        </fieldset>
     
     
     
    <?php } ?>
      <input type="submit" value="Go" />
    </form>
     
     </body></html>

  10. #30
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    318
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 318
    Points : 81
    Points
    81
    Par défaut
    Est-ce que quelqu'un peut m'aider SVP

  11. #31
    Membre émérite
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Points : 2 411
    Points
    2 411
    Par défaut
    Re,

    Personnellement, je n'ai rien compris à cette histoire de vue.

    Du coup, je ne sais toujours pas quelle est la page appelée via le formulaire, et, si cette dernière contient bien les lignes permettant de récupérer/mémoriser le nombre saisie (voir post précédent).

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. [XML] Surcharge de la mémoire à la génération d'un fichier XML
    Par phy4me dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 21/12/2008, 12h15
  2. [JDOM] Génération d'un fichier XML avec JDOM
    Par demcoul dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 27/11/2008, 13h50
  3. génération d'un fichier XML
    Par k_boy dans le forum XQUERY/SGBD
    Réponses: 9
    Dernier message: 13/06/2008, 15h25
  4. Problème génération d'un fichier XML
    Par sw_spring dans le forum Jasper
    Réponses: 1
    Dernier message: 19/03/2008, 09h32
  5. génération automatique de fichier xml vide
    Par ecdxml dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 03/07/2006, 10h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo