Dupliquer possible:
Quel est le meilleur moyen de passer une variable PHP à Javascript?
J'utilise le code suivant:
<script type="text/javascript">
<?php $ctnme = $_SERVER['REQUEST_URI'];
$cnme = explode("/",$ctnme);
echo $cname = $cnme[1];
?>
var spge = <?php echo $cname; ?> ;
alert(spge);
</script>
La valeur n'alerte pas. Quelle est l'erreur?
Essentiellement:
<?php
//somewhere set a value
$var = "a value";
?>
<script>
// then echo it into the js/html stream
// and assign to a js variable
spge = '<?php echo $var ;?>';
// then
alert(spge);
</script>
Le moyen le plus sûr (en termes de traitement des caractères spéciaux et des types de données) utilise json_encode()
:
var spge = <?php echo json_encode($cname); ?>;
Utilisez json_encode () si possible (PHP 5.2+).
Voir celui-ci (peut-être dupliquer?): Passer une chaîne PHP à une variable JavaScript (et échapper à la nouvelle ligne)
Placez des guillemets autour du <?php echo $cname; ?>
pour vous assurer que Javascript l'accepte comme chaîne, envisagez également l'échappement.
**var spge = '';**
alert(spge);