dedlfix: Java-Script Variablen mit PHP setzen

Beitrag lesen

Tach!

Würde das gerne irgendwie lokal testen bezogen auf Logik und Syntax, weiß aber nicht wie. Hast du einen Tipp?

Es gibt da zum Beispiel den Xampp.

<script>
	dataLayer = [{
		'transactionId': '<?php $transactionId ?>',
		'transactionTotal': <?php $transactionTotal ?>, 

Du hast da eine Variable in einen PHP-Block geschrieben. Und nun? Was soll denn mit der Variable passieren? Einfach so gibt sie ihren Inhalt nicht aus. Da fehlt noch sowas wie echo.

Zudem kann das, so wie du das notiert hast, zu Fehlern (auch sicherheitskritischen) führen. $transactionId darf keine ' enthalten, sonst gibt das mindestens einen Syntaxfehler auf der Javascript-Seite. $transactionTotal scheint eine Zahl zu sein. Wenn dem nicht so ist, führt das Weglassen der Anführungszeichen erst recht zu einem Fehler.

Ich würde nicht nur den nachfolgenden Teil sondern alles als Datenstruktur in PHP abbilden und diese dann komplett durch json_encode() schicken.

			$transactionProductsArray = transactionProducts
			(
				for($a = 1; $a <= $anzahlProduke; $a++)

Was bezweckst du denn damit? Das ist überhaupt kein gültiger PHP-Code. Wenn du das Problem allein lösen möchtest, solltest du dir zumindest die Grundlagen von PHP in einem Tutorial erarbeiten. (Ich kenne keins, aber da sind bestimmt welche in unserem Wiki verlinkt.)

			json_encode($transactionProductsArray);

json_encode() gibt sein Ergebnis zurück. Das landet nicht automatisch in der Ausgabe. Du must da auch wieder echo verwenden.

Noch'n kluger Spruch: Die Teile einer Programmiersprache oder Funktionssammlung machen (abgesehen von Fehlern) nur das, was dokumentiert ist, und was man ihnen ausdrücklich sagt. Sie machen nicht, was man selbst denkt, dass sie es machen könnten, nur weil man grade diese Funktionalität braucht.

dedlfix.