Foros del Web » Programando para Internet » PHP »

Abrir modal bootstrap desde archivo Php

Estas en el tema de Abrir modal bootstrap desde archivo Php en el foro de PHP en Foros del Web. Buenas, lo que quiero hacer es lo siguiente, tengo un formulario de registro que se muestra en un modal de bootstrap, mi pregunta es que ...
  #1 (permalink)  
Antiguo 10/11/2015, 12:13
 
Fecha de Ingreso: noviembre-2015
Ubicación: Cajamarca
Mensajes: 7
Antigüedad: 8 años, 5 meses
Puntos: 0
Abrir modal bootstrap desde archivo Php

Buenas, lo que quiero hacer es lo siguiente, tengo un formulario de registro que se muestra en un modal de bootstrap, mi pregunta es que cuando hago la validadcion del lado del servidor(usando php) si no cumple la validacion me retorne a la misma pagina con el modal visible, no se si me dejo entender, aqui esta el codigo:

El registro se hace en mi pagina index.php en el formulario que se muestra al abrir mi modal ventanaMod1.

archivo primerRegistro.php

if (trim($_POST["txtEmail"]) == '' || trim($_POST["txtContraseña"]) == '')
{
header ("Location: ../index.php"); // Como hay error quiero que me redireccione de nuevo a index, pero quiero que me redireccione con el modal ventanaMod1 abierta.¿Como haría aqui?

}
else
{
//Aqui van mas validaciones y si las cumple registra y me envia a la pagina para completar perfil
header ("Location: ../completarPerfil.php");
}

Les agradecería mucho su ayuda.
  #2 (permalink)  
Antiguo 10/11/2015, 12:16
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 8 años, 10 meses
Puntos: 263
Respuesta: Abrir modal bootstrap desde archivo Php

usa ajax para eso, asi envias la peticion y si no se valida este retorna una respuesta a la misma ventana sin recargar o cerrar el modal
__________________
[email protected]
HITCEL
  #3 (permalink)  
Antiguo 10/11/2015, 12:17
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Abrir modal bootstrap desde archivo Php

Un modal es un elemento que existe únicamente en HTML y en el navegador, PHP no puede "abrirlo" porque se ejecuta en el servidor.

La única forma de "abrir" el modal es que implementes algo de código Javascript que reaccione a la URL, ej. index.php?modal=1

Y así abres el modal cuando dicho valor "modal=1" esté presente en la URL.

Pero bueno, con PHP no podrás hacer nada de eso.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 10/11/2015, 12:18
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
Respuesta: Abrir modal bootstrap desde archivo Php

Saludo
Pues podría intentarse en la redirección añadir un parámetro de modal,
y en el index revisar sí el parámetro viene, y sí es así, que muestre
la modal.

Ej
Código PHP:
Ver original
  1. //enviar modal
  2. location: index.php?modal=1
  3. //en el index
  4. if($_GET['modal'] == 1)
  5. //mostrar el modal
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com
  #5 (permalink)  
Antiguo 10/11/2015, 12:18
Avatar de chronos682  
Fecha de Ingreso: febrero-2004
Ubicación: Tunja - Boyacá - Colombia
Mensajes: 627
Antigüedad: 20 años, 2 meses
Puntos: 69
Respuesta: Abrir modal bootstrap desde archivo Php

Pasale una variable por GET por ejemplo:

Location: ../index.php?modal=true

Y cuando se abra index.php que compruebe si está presente la variable modal y si es así que muestre la ventana modal.
__________________
Si te gustó la respuesta dale +1

HERNÁN G. SIABATO M.
[email protected]
  #6 (permalink)  
Antiguo 10/11/2015, 12:19
Avatar de chronos682  
Fecha de Ingreso: febrero-2004
Ubicación: Tunja - Boyacá - Colombia
Mensajes: 627
Antigüedad: 20 años, 2 meses
Puntos: 69
Respuesta: Abrir modal bootstrap desde archivo Php

Jejeje tres respuestas iguales no te puedes quejar de la efectividad del foro.
__________________
Si te gustó la respuesta dale +1

HERNÁN G. SIABATO M.
[email protected]
  #7 (permalink)  
Antiguo 10/11/2015, 12:19
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 8 años, 10 meses
Puntos: 263
Respuesta: Abrir modal bootstrap desde archivo Php

Mira ESTO aqui hay una peticion con ajax para enviar y cecibir la respuesta, yo lo uso en mi web y funciona perfecto con los modales de bootstrap o con cualquier cosa en html
__________________
[email protected]
HITCEL
  #8 (permalink)  
Antiguo 10/11/2015, 12:36
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 8 años, 10 meses
Puntos: 263
Respuesta: Abrir modal bootstrap desde archivo Php

prueba esto,

script que procesa el formulario y recibe la respuesta del servidor:
Código Javascript:
Ver original
  1. function objetoAjax(){
  2.     var xmlhttp=false;
  3.     try {
  4.         xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
  5.     } catch (e) {
  6.         try {
  7.            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  8.         } catch (E) {
  9.             xmlhttp = false;
  10.         }
  11.     }
  12.  
  13.     if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
  14.         xmlhttp = new XMLHttpRequest();
  15.     }
  16.     return xmlhttp;
  17. }
  18.  
  19. function enviar(){
  20.     //donde se mostrará el resultado
  21.     divResultado = document.getElementById('resultado');
  22.  
  23.     //tomamos el valor de la lista desplegable
  24.     dato=document.formulario.dato.value;
  25.      
  26.     //instanciamos el objetoAjax
  27.     ajax=objetoAjax();
  28.  
  29.     //usamos el medoto POST
  30.     //archivo que realizará la operacion
  31.    
  32.     ajax.open("POST", "archivo.php",true);
  33.     ajax.onreadystatechange=function() {
  34.         if (ajax.readyState==4) {
  35.             //mostrar resultados en esta capa
  36.             divResultado.innerHTML = ajax.responseText
  37.         }
  38.     }
  39.     ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
  40.     //enviando los valores
  41.     ajax.send("dato="+dato)
  42. }

formulario de ejemplo:

Código HTML:
Ver original
  1. <form action="" name="formulario" onSubmit="enviar(); return false">
  2.  
  3. <input type="text" name="dato"/>
  4.  
  5. <input type="submit" value="enviar"/>
  6.  
  7. </form>
  8.  
  9. <!--aqui recibo la respuesta del formulario sin cerrar la pagina-->
  10. <div id="respuesta"></div>

el php que va a procesar y a emitir la respuesta

Código PHP:
Ver original
  1. $dato = $_post['dato'];
  2.  
  3. if($dato == "primero"){
  4. echo "Los mas viejos van primero";
  5. }else{
  6. echo "Lomas mas jovenes van primero";
  7. }

como puedes ver al enviar el formulario el js lo captura y procesa su envio sin cerrar el modal, luego me muestra la espuesta, bien sea satisfactoria, error o lo que sea que coloques como respuesta en tu php, recuerda que lo que se va a mostrar en el div de respuesta es lo que imprimas en tu php y solo eso, en esta PAGINA puedes ver como funciona, intenta recuperar la contraseña y veras, el modal se abre y procesa todo en la misma pagina sin cerrarse.

Saludos espero te sirva
__________________
[email protected]
HITCEL
  #9 (permalink)  
Antiguo 10/11/2015, 13:55
 
Fecha de Ingreso: noviembre-2015
Ubicación: Cajamarca
Mensajes: 7
Antigüedad: 8 años, 5 meses
Puntos: 0
Respuesta: Abrir modal bootstrap desde archivo Php

Cita:
Iniciado por escanico Ver Mensaje
Buenas, lo que quiero hacer es lo siguiente, tengo un formulario de registro que se muestra en un modal de bootstrap, mi pregunta es que cuando hago la validadcion del lado del servidor(usando php) si no cumple la validacion me retorne a la misma pagina con el modal visible, no se si me dejo entender, aqui esta el codigo:

El registro se hace en mi pagina index.php en el formulario que se muestra al abrir mi modal ventanaMod1.

archivo primerRegistro.php

if (trim($_POST["txtEmail"]) == '' || trim($_POST["txtContraseña"]) == '')
{
header ("Location: ../index.php"); // Como hay error quiero que me redireccione de nuevo a index, pero quiero que me redireccione con el modal ventanaMod1 abierta.¿Como haría aqui?

}
else
{
//Aqui van mas validaciones y si las cumple registra y me envia a la pagina para completar perfil
header ("Location: ../completarPerfil.php");
}

Les agradecería mucho su ayuda.
Cita:
Iniciado por mortiprogramador Ver Mensaje
Saludo
Pues podría intentarse en la redirección añadir un parámetro de modal,
y en el index revisar sí el parámetro viene, y sí es así, que muestre
la modal.

Ej
Código PHP:
Ver original
  1. //enviar modal
  2. location: index.php?modal=1
  3. //en el index
  4. if($_GET['modal'] == 1)
  5. //mostrar el modal

Podrias explicarme un poco mas a fondo porfavor, disculpa la molestia.
  #10 (permalink)  
Antiguo 10/11/2015, 17:06
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
Respuesta: Abrir modal bootstrap desde archivo Php

Cita:
Iniciado por escanico Ver Mensaje
Podrias explicarme un poco mas a fondo porfavor, disculpa la molestia.

Ahm, pues a lo que me refería es a enviar un valor en la
redirección, y luego recuperar ese valor en la página
a donde se redirecciona.
Si se detalla mi ejemplo, primero agrego un valor para modal,
el cual envío por get hacia index.php

Y así, en index.php tendría que preguntar sí ese valor
llegò y sí tiene cierto valor (1 en el ejemplo) y de ser así,
se ejecutaría el código necesario para el modal.

Eso es.
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com

Etiquetas: bootstrap, formulario, modal, registro
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:27.