Highcharts - Variablen verlangern

arraybreak

Erfahrenes Mitglied
Tag All,

ich weiß garnicht wie ich mein Problem beschreiben soll, ich habe eine Statistik mit jQuery im Net gefunden wo ich meine ganzen Zahlen wiedergeben kann, nur das Problem dabei ist dass die Zahlen(Variablen) im JScript sind und nicht z.b. im HTML Code.

Ich möchte diese(letzte) Zeile "data: [15000.9, 25000.5, 10006.4, 12900.2, 14400.0, 17600.0, 13500.6, 14800.5, 21006.4, 19400.1, 9500.6, 5400.4]" irgend wie nach HTML oder PHP Datei verlagern damit ich sie mit PHP-Funktion immer ändern kann ohne dabei immer auf die Datei manuel zugreifen zu müssen.
Ich würde selbst googeln nur weiß ich leider nicht was ich bei google eingeben soll :)

PHP:
var chart;
$(document).ready(function() {
	chart = new Highcharts.Chart({
		chart: {
			renderTo: 'container',
			defaultSeriesType: 'column'
		},
		title: {
			text: 'Prognose'
		},
		subtitle: {
			text: 'für Jahr 2012'
		},
		xAxis: {
			categories: [
				'Jan',
				'Feb',
				'Mar',
				'Apr',
				'May',
				'Jun',
				'Jul',
				'Aug',
				'Sep',
				'Okt',
				'Nov',
				'Dez'
			]
		},
		yAxis: {
			min: 0,
			title: {
				text: 'Prognose'
			}
		},
		legend: {
			layout: 'vertical',
			backgroundColor: '#ffffff',
			align: 'left',
			verticalAlign: 'top',
			x: 30,
			y: 0,
			floating: true,
			shadow: false
		},
		tooltip: {
			formatter: function() {
				return ''+
					this.x +': '+ this.y +' Euro';
			}
		},
		plotOptions: {
			column: {
				pointPadding: 0.2,
				borderWidth: 0
			}
		},
			series: [{
			name: 'Name 1',
			data: [15000.9, 25000.5, 10006.4, 12900.2, 14400.0, 17600.0, 13500.6, 14800.5, 21006.4, 19400.1, 9500.6, 5400.4]

		}]
	});
});

Wer kann mir helfen, wäre jedem sehr dankbar.

Gruß arraybreak
 
Etwa so

HTML:
<script type="text/javascript">var chart_data = [15000.9, 25000.5, 10006.4, 12900.2, 14400.0, 17600.0, 13500.6, 14800.5, 21006.4, 19400.1, 9500.6, 5400.4];</script>
<script src="chart.js" type="text/javascript"></script>

und in deiner externen Datei

Javascript:
series: [{
    name: 'Name 1',
    data: chart_data
}]
 
Hi und danke erst mal für deine Antwort, ich habe mein vorhaben wahrscheinlich ein wenig falsch erklärt,

ich möchte diese Zahlenwerte in meinem Admin-Bereich ändern ohne manuell auf irgend welche Datei zugreifen zu müssen, sprich anstatt der Zahlen möchte ich so ein ungefähre Funktion einbauen, dass mir erlaubt die Zahlen außerhalb der Datei zu ändern:

PHP:
<?php echo $design_options['zahlen'];?>

Also sollte es dann ungefähr so aussehen, wie in diesem Beispiel (Mir ist klar dass dieses Beispiel nicht funktioniert, wollte nur damit zeigen wie ich das meine)
PHP:
series: [{
    name: 'Name 1',
    data: <?php echo $design_options['zahlen'];?>
}]

Wie kann man das realisieren? Ich kann doch in JavaScript keine PHP Funktion einbauen!?

Gruß arraybreak
 
Das hier funktioniert doch

Javascript:
series: [{
    name: 'Name 1',
    data: <?php echo $design_options['zahlen'];?>
}]

Auf dem Server macht es keine Unterschied ob das jetzt HTML oder JavaScript ist, du kannst da ganz normal PHP Tags einfügen.
 
werde es ausprobieren, danke dir ;)

funktioniert leider nicht, die Datei wo ich diesen PHP Tag einbinden möchte hat eine ".js" Endung
 
Dann musst du entweder
a) die Datei in .php umbenennen. Kann trotzdem als Script eingebunden werden oder
b) per .htaccess PHP für die Endung js aktivieren oder
c) gleich wie b, nur in den zentralen Servereinstellungen.
 
Vielen Dank an euch alle!

habe es jetzt so in meine PHP Datei eingebunden:
PHP:
<script type="text/javascript">
    var chart_data = [<?php echo $design_options['zahlen'];?>];
</script>
 
Zurück