Hacer un echo en un script JS

Resuelto
CorentinRoche Mensajes publicados 287 Estado Miembro -  
CorentinRoche Mensajes publicados 287 Estado Miembro -
Bonjour,

Quiero saber si es posible hacer un eco en un <script>/script>

Me explico, he recuperado un código que me permite crear un diagrama.

Las que son dos % que en total hacen 100%.

Actualmente, estos datos están fijos en el script y mi objetivo es poder hacer un "eco" en el script con los valores calculados previamente. ¡Para los cálculos no hay problema!

Pero la pregunta es cómo puedo hacer para escribir estos resultados en lugar de los datos actuales.

El código:

 try { // Percent Chart 2 var ctx = document.getElementById("percent-chart2"); if (ctx) { ctx.height = 209; var myChart = new Chart(ctx, { type: 'doughnut', data: { datasets: [ { label: "My First dataset", data: [50, 50], backgroundColor: [ '#00b5e9', '#fa4251' ], hoverBackgroundColor: [ '#00b5e9', '#fa4251' ], borderWidth: [ 0, 0 ], hoverBorderColor: [ 'transparent', 'transparent' ] } ], labels: [ 'Products', 'Services' ] }, options: { maintainAspectRatio: false, responsive: true, cutoutPercentage: 87, animation: { animateScale: true, animateRotate: true }, legend: { display: false, position: 'bottom', labels: { fontSize: 14, fontFamily: "Poppins,sans-serif" } }, tooltips: { titleFontFamily: "Poppins", xPadding: 15, yPadding: 10, caretPadding: 0, bodyFontSize: 16, } } }); } } catch (error) { console.log(error); } 


Es en la línea "data: [50, 50]," donde me gustaría hacer algo como:
data: [<?php echo $var1 ;?>, <?php echo $var2;?>],


Por ejemplo... No conozco en absoluto los límites de JS...

Gracias de antemano

Configuración: Windows / Opera 70.0.3728.119

Cordialmente,
Roche Corentin

1 respuesta

NHenry Mensajes publicados 15235 Fecha de registro   Estado Moderador Última intervención   387
 
PHP genera el código de la página (HTML, CSS, JS, ...)
Por lo tanto, no hay razón para que un "echo" en tu código en la posición del código JS no te permita colocar eso en el código JS.

--
Intervengo principalmente en VB6 y VB.NET, con un poco de C#, pero la moderación me lleva a menudo a otros lenguajes.
En VB.NET piensa en activar "Option Explicit" y "Option Strict"
1
CorentinRoche Mensajes publicados 287 Estado Miembro 41
 
En realidad, esto funciona bien... es un error en otra parte de mi código, ¡lo siento!

Solo si muevo mi código JS a un archivo separado, como
<script src="js/test.js"></script>

(Al final de mi archivo index.php)

Y al principio de mi archivo index.php defino las variables que se usan en test.js.
¿Eso funcionará o estoy obligado a incluir mi código js de esta manera:
<script>el script</script>


¡Gracias!
0
jordane45 Mensajes publicados 30426 Fecha de registro   Estado Moderador Última intervención   4 830 > CorentinRoche Mensajes publicados 287 Estado Miembro
 
Hola,

No hay problema en poner código PHP como lo haces en JavaScript.
Sin embargo, necesitas crear tu variable data fuera de un archivo .js (el PHP solo se ejecuta en archivos con formato .php o phtml... a menos que hagas una configuración en Apache... pero te lo desaconsejo...).
Yo lo haría, en tu archivo index.php
 <script> var datas = [<?php echo $var1 ;?>, <?php echo $var2;?>] ; </script> 


Y en tu archivo .js
 data: datas, 
0
CorentinRoche Mensajes publicados 287 Estado Miembro 41 > jordane45 Mensajes publicados 30426 Fecha de registro   Estado Moderador Última intervención  
 
Acabo de hacer la prueba y no funciona...

He reemplazado esto
data: [<?php echo $var1 ;?>, <?php echo $var2;?>],
por esto:
data: datas,
en mi archivo js\graphique-pro-part.js

y en mi archivo php tengo:
 <script src="js/graphique-pro-part.js"></script> <script> var datas = [<?php echo $pourcentage_de_client_PRO ;?>, <?php echo $pourcentage_de_client_PART ;?>]; </script>
0
jordane45 Mensajes publicados 30426 Fecha de registro   Estado Moderador Última intervención   4 830 > CorentinRoche Mensajes publicados 287 Estado Miembro
 
Una página web se lee de arriba hacia abajo por el navegador....... si colocas la inicialización de tu variable después de haber cargado tu js.. no funcionará.
0
CorentinRoche Mensajes publicados 287 Estado Miembro 41 > jordane45 Mensajes publicados 30426 Fecha de registro   Estado Moderador Última intervención  
 
Efectivamente ... ¡Error de base, lo siento!

Gracias de nuevo.
0