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 :

[PHP-JS] Ouverture d'un fichier dont le nom est dynamique


Sujet :

Langage PHP

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 386
    Points : 90
    Points
    90
    Par défaut [PHP-JS] Ouverture d'un fichier dont le nom est dynamique
    Bonjour a vous,
    Je recherche la syntaxe pour ouvrir un fichier de cette façon :
    le visiteur a fait des choix qui sont stocker dans des variables.
    Je voudrais qu'il ouvre le fichier "choix1"_"choix2"_"Choix3.php comment faire pour concaténer ces 3 élémetns ?

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Une bête concaténation pour obtenir le nom du fichier ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $nom_du_fichier = $choix1.'_'.$choix2.'_'.$choix3.'.php';
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 386
    Points : 90
    Points
    90
    Par défaut
    j'essaye de faire ce petit bout de code mais il ne m'affiche pas la page :-(
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <form name="form" action="$choix1.'_'.$choix2.'_'.$choix3.'.php'" method="post">
    <p align="center">Nom  : <input type="text" name="nom"></p>
    <p align="center">Prenom: <input type="text" name="mod"></p>
    <p align="center">Option 1 : <input type="text" name="op1"></p>
    <p align="center">Option 2 : <input type="text" name="op2"></p>
    <p align="center">Option 3 : <input type="text" name="op3"></p>
    <p align="center">Option 4 : <input type="text" name="op4"></p>
    <p align="center">

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 386
    Points : 90
    Points
    90
    Par défaut
    Je dois etre tout pres de la solution, le visiteur choisit dans la premiere liste un élément, une liste correspondante a son choix est afficher dans la 2eme liste. Puis une 3eme liste indépendante des deux autres ou le visiteur effectue un choix.
    Quand ce choix est effectuer, sans qu'il click, la page suivante s'ouvre ( choix1_choix2_choix3.php
    Voici mon script :
    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
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    <script type="text/javascript">
    <!--
    function choix(boite)
    {
    var j, n;
    var i = boite.selectedIndex;
    var boite2 = document.getElementById("boite2");
    var tab = null, liens = null;
     
    n = boite2.options.length;
    for(j = 1; j <n; j++)
        boite2.remove(1);
     
     
    if (i == 0)
    {
        return;
    }
    else
    {
     
        switch (i)
        {
            case 1 : tab = new Array("n1","n2","n3","n4","n5");
                    break;
            case 2 : tab = new Array("s1","s2","s3");
                   break;
            case 3 : tab = new Array("so1","so2","so3","so4","so5","so6");
                    break;
            case 4 : tab = new Array("L1");
                    break;
            case 5 : tab = new Array("sag1","sag2");
                    break;
        }
     
        for(j = 0; j<tab.length; j++)
            boite2.options.add(new Option(tab[j], false, false));
    }
     
        boite2.selectedIndex=0;
    }
    function ouvrepage(boite)
    {
        if (boite.selectedIndex!=0)
        {
            document.location.href = boite.value;
        }
     
    } 
     
    //-->
    </script>
    </head>
     
    <body>
    <form id="formulaire">
     
    <select id="boite1" onchange="choix(this)">
      <option selected="selected">...........Choisissez ...........</option>
      <option>Test1</option>
      <option>Test2</option>
      <option>Test3</option>
      <option>Test4</option>
      <option>Test5</option>
    </select>
     
    <select id="boite2">
      <option selected="selected">...........Choisissez ...........</option>
    </select>
     
    <select id="boite3" onchange="ouvrepage(this)">
      <option selected="selected">...........Choisissez ...........</option>
      <option>3emeChoix1</option>
      <option>3emechoix2</option>
      <option>3emechoix3</option>
    </select>
     
     
    </form>

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 386
    Points : 90
    Points
    90
    Par défaut
    Je suis en crise la
    La passage de la liste 1 a 2 est ok, la 3eme liste indépendante des deux autres s'affiche niquel, par contre quand le visiteur a fait son 3eme choix, le prog doit concatener les 3 choix effectuer pour ouvrir la page suivante "choix1""choix2"choix3".php , mais cette syntaxe ne fonctionne pas ,une piste ?

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 57
    Points : 50
    Points
    50
    Par défaut
    yuyu599 il faut récupérer les valeurs et les concaténer

    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
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    <html>
    <head>
    <script type="text/javascript">
    <!--
    function choix(boite){
    	var j, n;
    	var i = boite.selectedIndex;
    	var boite2 = document.getElementById("boite2");
    	var tab = null, liens = null;
     
    	n = boite2.options.length;
    	for(j = 1; j <n; j++){
    	    boite2.remove(1);
    	}
     
    	if (i == 0){
    	    return;
    	}else{
    	    switch (i){
    	        case 1 : tab = new Array("n1","n2","n3","n4","n5");
    	                break;
    	        case 2 : tab = new Array("s1","s2","s3");
    	               break;
    	        case 3 : tab = new Array("so1","so2","so3","so4","so5","so6");
    	                break;
    	        case 4 : tab = new Array("L1");
    	                break;
    	        case 5 : tab = new Array("sag1","sag2");
    	                break;
    	    }
     
    	    for(j = 0; j<tab.length; j++)
    	        boite2.options.add(new Option(tab[j], false, false));
    		}
     
    	    boite2.selectedIndex=0;
    	}
     
    	function ouvrepage(boite){
       		if (boite.selectedIndex!=0){
            	document.location.href = boite1.value + "_" + boite2.options[boite2.selectedIndex].text + "_" + boite.value + ".html";
        	}
     
    } 
     
    //-->
    </script>
    </head>
     
    <body>
    <form id="formulaire">
     
    <select id="boite1" onchange="choix(this)">
      <option selected="selected">...........Choisissez ...........</option>
      <option>Test1</option>
      <option>Test2</option>
      <option>Test3</option>
      <option>Test4</option>
      <option>Test5</option>
    </select>
     
    <select id="boite2">
      <option selected="selected">...........Choisissez ...........</option>
    </select>
     
    <select id="boite3" onchange="ouvrepage(this)">
      <option selected="selected">...........Choisissez ...........</option>
      <option>3emeChoix1</option>
      <option>3emechoix2</option>
      <option>3emechoix3</option>
    </select>
     
     
    </form>
    </body>
    </html>

  7. #7
    Membre expérimenté
    Avatar de Jumano
    Profil pro
    Inscrit en
    Février 2007
    Messages
    1 163
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 1 163
    Points : 1 595
    Points
    1 595
    Par défaut
    Bonjour,
    Juste une petite précision à propos du code fournit par Spaccio :

    Si tu veux récupérer les "values" de tes "selects" alors il faut ajouter dans tes <option> une "value" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <option value="Test1">Test1</option>
    A ce moment là tu récupères ta valeur de ta "boite1" par exemple avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    document.getElementById('boite1').options[document.getElementById('boite1').selectedIndex].value
    Si tu n'as pas de "value" dans tes <options>, tu récupères le "text" de ton "select" avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    document.getElementById('boite1').options[document.getElementById('boite1').selectedIndex].text
    Ce qui te donne comme code (sans "value" dans tes <options>) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    function ouvrepage(boite)
    {
        if (boite.selectedIndex!=0)
        {
          document.location.href = document.getElementById('boite1').options[document.getElementById('boite1').selectedIndex].text +"_"+ document.getElementById('boite2').options[document.getElementById('boite2').selectedIndex].text +"_"+ document.getElementById('boite3').options[document.getElementById('boite3').selectedIndex].text +".php";
        }
    }
    Un petit tour dans la FAQ Javascript

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 57
    Points : 50
    Points
    50
    Par défaut
    Je m'incline, maintenant le code est super propre. J'avoue avoir répondu un peu vite

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 29/06/2010, 10h24
  2. [Batch] Ouvrir un fichier dont le nom est partiellement connu.
    Par TGV6773 dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 03/02/2010, 18h24
  3. lire des fichiers dont le nom est dans un fichier
    Par homonxa dans le forum Développement de jobs
    Réponses: 1
    Dernier message: 20/01/2010, 14h54
  4. [VBA-E]ouvrir un fichier dont le nom est determiné par sa date de création
    Par olivertwist dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 17/04/2007, 17h29
  5. Réponses: 4
    Dernier message: 18/08/2006, 07h57

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