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 :

passer une variable PHP au javascript


Sujet :

Langage PHP

  1. #1
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 369
    Points : 5 734
    Points
    5 734
    Billets dans le blog
    1
    Par défaut passer une variable PHP au javascript
    Bonjour,

    ce que je voudrais faire est dans le titre, et je suis obligé de passer par là, car il s'agit d'extraire le nom de fichiers qui se trouvent sur le serveur, puis d'en passer l'URL à un script js...
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Avec un simple echo

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <script type='text/JavaScript'>
    alert("<?php echo $var; ?>");
    </script>
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 369
    Points : 5 734
    Points
    5 734
    Billets dans le blog
    1
    Par défaut
    D'accord, mais ainsi, je ne fais qu'un affichage, pas une affectation ; est-ce que ça, ça marcherait ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <script type='text/JavaScript'>
    var var_js=<?php echo($var_php); ?>;
    </script>
    (ou un truc dans cet esprit)
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Oui.
    Au passage, c'est plus rapide d'essayer que de poser la question ici.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 369
    Points : 5 734
    Points
    5 734
    Billets dans le blog
    1
    Par défaut
    Au passage, c'est plus rapide d'essayer que de poser la question ici.
    Oui, à condition de pender à utiliser le echo (c'est ton post qui m'y a fait pensé)
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  6. #6
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 369
    Points : 5 734
    Points
    5 734
    Billets dans le blog
    1
    Par défaut
    encore un souci : je fais un upload de fichiers suivi de la création d'une chaîne de caractères (variable js) ; l'upload se passe bien, mais la chaîne est vide, pourquoi ?
    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
    <script language="javascript">
    var h_attachmentNames='';
    </script>
    <?php
    $uploads_dir = 'uploads';
    $i=0;
    foreach ($_FILES["userfile"]["error"] as $key => $error) {
        if ($error == UPLOAD_ERR_OK) {
            $tmp_name = $_FILES["userfile"]["tmp_name"][$key];
            $name = $_FILES["userfile"]["name"][$key];
            move_uploaded_file($tmp_name, "$uploads_dir/$name");
            $virg=($i==0)?"":",";		
    ?>
     
           <script language="javascript">
           h_attachmentNames+=<?php echo $virg ?>+'"http://vercorshandisport.org/quickr/'+<?php $uploads_dir ?>+'/'+<?php $name ?>+'"';
           </script>
    <?php
        }
    }
     
    ?> 
    <script language="javascript">
    alert('h_attachmentNames='+h_attachmentNames);
    </script>
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  7. #7
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Tu n'as pas mis le echo
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  8. #8
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 369
    Points : 5 734
    Points
    5 734
    Billets dans le blog
    1
    Par défaut
    Je viens de rajouter le echo que j'avais effectivement oublié, mais 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
    <script language="javascript">
    var h_attachmentNames='';
    </script>
    <?php
    $uploads_dir = 'uploads';
    $i=0;
    foreach ($_FILES["userfile"]["error"] as $key => $error) {
        if ($error == UPLOAD_ERR_OK) {
            $tmp_name = $_FILES["userfile"]["tmp_name"][$key];
            $name = $_FILES["userfile"]["name"][$key];
            move_uploaded_file($tmp_name, "$uploads_dir/$name");
    		$virg=($i==0)?"":",";
    		?>
     
    		<script language="javascript">
    		h_attachmentNames+=<?php echo $virg ?>+'"http://vercorshandisport.org/quickr/'+<?php echo $uploads_dir ?>+'/'+<?php echo $name ?>+'"';
    		</script>
    		<?php
        }
    }
     
    ?> 
    <script language="javascript">
    alert('h_attachmentNames='+h_attachmentNames);
    </script>
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  9. #9
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Regarde ta source HTML, tu verras que ca ne va pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    h_attachmentNames+= '<?php echo $virg ?>"http://vercorshandisport.org/quickr/<?php echo $uploads_dir ?>/<?php echo $name ?>"';
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  10. #10
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 369
    Points : 5 734
    Points
    5 734
    Billets dans le blog
    1
    Par défaut
    Mais ça sort d'où ça, vu que ce n'est pas mon code ?
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  11. #11
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Citation Envoyé par laurentSc Voir le message
    Mais ça sort d'où ça, vu que ce n'est pas mon code ?
    .
    Sinon, pour la tag script javascript, utilise
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script type="text/javascript">

  12. #12
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 369
    Points : 5 734
    Points
    5 734
    Billets dans le blog
    1
    Par défaut
    Finalement, je suis d'accord que ça ne va pas, mais honnêtement, je ne sais pas comment il faudrait faire ; voici mon code :
    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
    <script type="text/javascript">
    var h_attachmentNames='';
    </script>
    <?php
    $uploads_dir = 'uploads';
    $i=0;
    foreach ($_FILES["userfile"]["error"] as $key => $error) {
        if ($error == UPLOAD_ERR_OK) {
                    $name = $_FILES["userfile"]["name"][$key];
                    ...
    		$virg=($i==0)?"":",";
    		if ($name!="") {
    		?>
     
    		<script type="text/javascript">
    		h_attachmentNames+='\''+<?php echo $virg ?>+'"http://vercorshandisport.org/quickr/'+<?php echo $uploads_dir ?>+'/'+<?php echo $name ?>+'"';
    		</script>
    		<?php }
        }
    	?>
    		<script type="text/javascript">
    		h_attachmentNames+='\'';
    		</script>
    sachant que le formulaire html qui lance cette action est le suivant :
    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
    <form action="action_form.php" method="post" enctype="multipart/form-data">
     
    <form>File 1 :<input name="userfile[]" type="file"><br>
     
    File 2 :<input name="userfile[]" type="file"><br>
     
    File 3 :<input name="userfile[]" type="file"><br>
     
    File 4 :<input name="userfile[]" type="file"><br>
     
    File 5 :<input name="userfile[]" type="file"><br>
     
      <br>
     
      <input value="send" type="submit"></form>
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  13. #13
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 380
    Points : 10 410
    Points
    10 410
    Par défaut
    Citation Envoyé par laurentSc Voir le message
    encore un souci : je fais un upload de fichiers suivi de la création d'une chaîne de caractères (variable js) ; l'upload se passe bien, mais la chaîne est vide, pourquoi ?
    Tu veux faire quoi exactement ?

  14. #14
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Bonjour,

    1- Comment tu utilises cette variable javascript?
    2- As-tu regardé le code HTML généré pour voir s'il est vraiment vide?

    A+.

  15. #15
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 369
    Points : 5 734
    Points
    5 734
    Billets dans le blog
    1
    Par défaut
    Je croyais avoir répondu, mais j'ai dû tout effacer par fausse manip

    Tu veux faire quoi exactement ?
    1- Comment tu utilises cette variable javascript?
    Ce que je veux faire, c'est proposer à l'utilisateur un formulaire qui lui permette d'uploader jusqu'à 5 fichiers flv (déjà fait), d'explorer le contenu du répertoire d'upload et en extraire le nom des fichiers (déjà fait, en PHP nécessairement, vu que le répertoire est sur le serveur), mettre cette liste de noms dans une string js et passer celle-ci à un script js qui va donner la liste des fichiers et lancer flowplayer sur celui qui est sélectionné. Ce qui coince, c'est de passer la liste des noms dans une string js, car si elle existe, ça marche (et la chaîne doit avoir le format :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    h_attachmentNames='"nom_1","nom_2",...,"nom_N"'
    .

    2- As-tu regardé le code HTML généré pour voir s'il est vraiment vide?
    <script type="text/javascript">
    h_attachmentNames+='\''++'"http://vercorshandisport.org/quickr/'+uploads+'/'+negawatt_rev15.flv+'"';
    </script>
    <script type="text/javascript">
    h_attachmentNames+='\'';
    </script>
    L'alert que je fais sur la variable h_attachmentNames montre qu'elle ne contient qu'une quote, et je ne comprends pas.
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

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

Discussions similaires

  1. Passer une variable PHP dans JavaScript
    Par freud dans le forum Langage
    Réponses: 16
    Dernier message: 03/05/2011, 18h51
  2. [PHP-JS] Comment passer une variable PHP en vbscript
    Par minette dans le forum Langage
    Réponses: 1
    Dernier message: 10/08/2006, 23h54
  3. Passer une variable python en javascript?
    Par Sayrus dans le forum Zope
    Réponses: 6
    Dernier message: 19/06/2006, 10h29
  4. [Tableaux] passer une variable php dans une url
    Par griese dans le forum Langage
    Réponses: 27
    Dernier message: 12/06/2006, 09h02
  5. [PHP-JS] Passer une variable PHP->JS dans une boucle
    Par PedroBD dans le forum Langage
    Réponses: 2
    Dernier message: 12/05/2006, 11h43

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