pasar - insertar html en php echo
Escape de comillas dobles con variable dentro de HTML echo (3)
Esta pregunta ya tiene una respuesta aquí:
Para una variable dentro de un eco que contiene HTML, ¿dónde agregaría barras para evitar las comillas dobles?
Ejemplo:
echo "<input type=/"hidden/" name=/"id/" value=".$row[''id'']." />";
Esta parte:
value=".$row[''id'']."
¿Qué tal si usa comillas simples para que no tenga que escapar de las comillas? Al igual que:
echo ''<input type="hidden" name="id" value="''.$row[''id''].''" />'';
Algunos consejos sobre cómo generar HTML con PHP:
- Use comillas simples para que no tenga que escapar de las comillas dobles (cuando use echo),
- Use
htmlspecialchars()
para escapar adecuadamente de los valores "rogue" que pueda tener.
Ejemplo usando echo
:
echo ''<input type="hidden" name="id" value="'', htmlspecialchars($row[''id''], ENT_QUOTES, ''UTF-8''), ''" />'';
O printf()
:
printf(''<input type="hidden" name="id" value="%s" />'',
htmlspecialchars($row[''id''], ENT_QUOTES, ''UTF-8'')
);
O, en modo HTML:
?>
<input type="hidden" name="id" value="<?php echo htmlspecialchars($row[''id''], ENT_QUOTES, ''UTF-8''); ?>" />
<?php
Use htmlentities
:
echo "<input type=/"hidden/" name=/"id/" value=/"".htmlentities($row[''id''])."/" />";