SyntaxError: cadena extraña literal error extraño [duplicado]
Esta pregunta ya tiene una respuesta aquí:
¿Cómo puedo dividir una cadena en más de una línea de código en JavaScript? 8 respuestasTengo este extraño error literal de cadena sin terminar en JavaScript. Cuando muestro solo una palabra como "php" (en la variable cache_open.handler). No hay error. Este es el script y a continuación funciona bien:
<script>
var cache_open = {};
var cache_name_open={};
var handler='open';
cache_open.handler='<pre class="brush: html;">php</pre>';
cache_name_open.handler='PHP prepared statement';
</script>
Sin embargo, cuando envío un código (código fuente de la entidad html) a la variable culpable cache_open.handler, devuelve un error literal de cadena sin terminar en la consola.
Esta es la salida de muestra donde devuelve un error:
<script>
var cache_open = {};
var cache_name_open={};
var handler='open';
cacheObj_open.handler='<pre class="brush: html;">
<?php
$stmt = $dbh->prepare("SELECT * FROM REGISTRY where name = ?");
if ($stmt->execute(array($_GET['name']))) {
while ($row = $stmt->fetch()) {
print_r($row);
}
}
?></pre>';
cache_name_open.handler='PHP prepared statement';
</script>
Al principio pensé que era solo la complejidad del código devuelto (por ejemplo, que contenía citas, etc.). Pero incluso un código HTML simple también devuelve un error:
<script>
var cache_open = {};
var cache_name_open={};
var handler='open';
cacheObj_open.handler='<pre class="brush: html;"><html>
<body>
<p>Hello world.</p>
</body>
</html></pre>';
cache_name_open.handler='PHP prepared statement';
</script>
¿Alguna idea de qué está causando el error? Cualquier sugerencia para modificaciones es muy apreciada gracias!