⊗ppPmRdIns 405 of 447 menu

Redireccionamiento instantáneo en PHP

El redireccionamiento realizado con la función header no ocurre en el momento de llamar a esta función. Después de todo, PHP no ejecuta el redireccionamiento por sí mismo, sino que solo envía la cabecera HTTP correspondiente al navegador.

Esto significa que el redireccionamiento ocurrirá solo cuando PHP ejecute todo el script hasta el final. Debido a esto, pueden ocurrir varios efectos parasitarios.

Por ejemplo, en el siguiente código queremos ejecutar un redireccionamiento o una consulta a la base de datos. Pero la consulta a la base de datos se ejecutará incluso si hubo un comando de redireccionamiento:

<?php if ($_GET['test']) { header('Location: test.php'); } $query = "UPDATE users SET changed=1 WHERE id=1"; mysqli_query($link, $query); // ¡se ejecutará incluso con redireccionamiento! ?>

Para evitar tales problemas, es necesario inmediatamente después del redireccionamiento llamar a la función die, que terminará instantáneamente la ejecución del script y el redireccionamiento ocurrirá inmediatamente:

<?php if ($_GET['test']) { header('Location: test.php'); die(); } $query = "UPDATE users SET changed=1 WHERE id=1"; mysqli_query($link, $query); ?>

Reproduzca algún efecto parasitario en su código. Luego corríjalo usando la función die.

Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar