es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Abrir PDF en una nueva pestaña al cargar la página.

Después de enviar un formulario, el usuario es llevado a una página de agradecimiento. En esta página, creo una variable que contiene la URL de un plano de planta específico seleccionado en el formulario.

$floorplan = $_POST[‘cm-f-djuiyhkr’];

Luego, quiero abrir este PDF del plano de planta en una pestaña nueva después de que se haya cargado la página de agradecimiento. Actualmente, esto es lo que tengo en la parte inferior de mi documento.

Obviamente, no está funcionando y no soy lo suficientemente bueno con el código como para depurarlo. Supongo que hay problemas al mezclar JS y PHP.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    En primer lugar, asegúrate de que la variable $floorplan se esté estableciendo correctamente desde el formulario. Puedes hacer esto agregando echo $floorplan en algún lugar de la página de agradecimiento para ver si muestra el valor correcto.

    Si la variable se establece correctamente, entonces el problema podría estar en cómo estás usando el código PHP dentro de JavaScript. Puedes intentar separar el código PHP del JavaScript, de esta manera:

    $(document).ready(function(){
        var link = '<?php echo $floorplan; ?>';
        window.setTimeout(function(){
            var newTab = window.open(link, '_blank');
        }, 5000);
    });
    

    Nota el uso de comillas simples alrededor del código PHP, así como el punto y coma al final de la instrucción echo.

    Si esto aún no funciona, puedes intentar depurar agregando mensajes de consola para ver si se está pasando correctamente la variable:

    $(document).ready(function(){
        var link = '<?php echo $floorplan; ?>';
        console.log('link: ' + link); // verificar si la variable link se establece correctamente
        window.setTimeout(function(){
            console.log('abriendo enlace...');
            var newTab = window.open(link, '_blank');
        }, 5000);
    });
    

    ¡Espero que esto ayude!

Comments are closed.