Foros del Web » Programando para Internet » PHP »

Interactuar Php con Ajax o JQuery

Estas en el tema de Interactuar Php con Ajax o JQuery en el foro de PHP en Foros del Web. Hola a todos, tengo una consulta para hacer, es la sgte: Resulta que con mis compañeros queremos autenticar usuarios con un popup y MVC, queremos ...
  #1 (permalink)  
Antiguo 12/09/2016, 18:58
Avatar de detective_jd  
Fecha de Ingreso: abril-2011
Ubicación: Salto
Mensajes: 437
Antigüedad: 13 años
Puntos: 6
Interactuar Php con Ajax o JQuery

Hola a todos, tengo una consulta para hacer, es la sgte:

Resulta que con mis compañeros queremos autenticar usuarios con un popup y MVC, queremos que al momento de hacer click en aceptar si el usuario es falso, que no nos recargue la página y no sabemos cómo hacerlo, pongo el código:

principal.php

Código PHP:
Ver original
  1. <a href="#popup" id="hrefAbrirPopup" data-type="zoomin">Iniciar Sesion</a>
  2.                                     <div id="popup" class="overlay-container">                                        
  3.                                         <div class="popup-contenedor zoomin">
  4.                                             <a href="#" class="close" aria-label="close" style="margin-top: -5px;">&times</a>
  5.                                             <br />
  6.                                             <?php if(\App\Session::get('msg') != null) {?>
  7.                                                 <div id="resultado" class="alert alert-<?php echo \App\Session::get('msg')[0]; ?> fade in">
  8.                                                     <i class="fa fa-<?php echo \App\Session::get('msg')[1]; ?>" style="font-size: 24px;"></i>&nbsp;
  9.                                                     <?php echo \App\Session::get('msg')[2]; ?>
  10.                                                 </div>
  11.                                             <?php } ?>
  12.                                             <p class="popup-titulo">Iniciar Sesi&oacuten</p>
  13.                                             <form action="index.php?c=usuarios&a=login" class="frm-login" method="post" name="frmlogin" id="login">
  14.                                                 <input name="txtuser" type="text" placeholder="Usuario" class="popup-textbox" autofocus="autofocus" required="required" id="login_user" />
  15.                                                 <input name="txtpass" type="password" placeholder="Contraseña"  class="popup-textbox" required="required" id="login_pass" />                            
  16.                                                 <input name="btnaceptar" type="submit" value="Aceptar" class="popup-btn popup-hover-btn"/>
  17.                                             </form>
  18.                                         </div>
  19.                                     </div>

UsuariosController.php

Código PHP:
Ver original
  1. public function login(){        
  2.         if(isset($_POST['btnaceptar'])) {
  3.             if(empty($_POST['txtuser']) or empty($_POST['txtpass'])){
  4.                 Session::set("msg","Ingrese los datos obligatorios (*) para continuar.");
  5.             } else {
  6.                 $usuario = (new Usuario())->login([$_POST['txtuser'], $_POST['txtpass']]);
  7.                 if (isset($usuario) and $usuario->getRol()->getNombre()!= "Chofer"){
  8.                     Session::login();
  9.                     Session::set("log_in",$usuario);  
  10.                     Session::set("msg", Session::msgInfo("Acceso concedido... Usuario: ". $usuario->getNombre()));
  11.                     header("Location:index.php?c=inicio&a=index");
  12.                     exit();
  13.                 } else {    
  14.                     Session::set("msg",Session::msgDanger("Acceso denegado."));
  15.                     header("Location:index.php?c=todos&a=index#popup");                    
  16.                 }
  17.             }
  18.         }                
  19.     }

Esperamos sus respuestas y saludos
  #2 (permalink)  
Antiguo 13/09/2016, 01:43
 
Fecha de Ingreso: octubre-2010
Ubicación: España
Mensajes: 1.007
Antigüedad: 13 años, 6 meses
Puntos: 123
Respuesta: Interactuar Php con Ajax o JQuery

Pues tu mismo te has respondido.

Haces una petición ajax y en función de las respuesta realizas la acción pertinente.

Para utilizar técnicas ajax no necesariamente necesitas jquery pero facilita el trabajo.
__________________
Unset($vida['malRollo']);
  #3 (permalink)  
Antiguo 13/09/2016, 12:45
Avatar de detective_jd  
Fecha de Ingreso: abril-2011
Ubicación: Salto
Mensajes: 437
Antigüedad: 13 años
Puntos: 6
Respuesta: Interactuar Php con Ajax o JQuery

hola, gracias por responder, como has dicho esa es la solución, pero con mis compañeros no le encontramos la vuelta, y vimos varios sitios en internet pero no le damos la tecla.

Que forma de hacer peticiones en ajax, nos recomiendan??

Saludos.
  #4 (permalink)  
Antiguo 15/09/2016, 05:12
Avatar de manuparquegiralda  
Fecha de Ingreso: junio-2012
Ubicación: Barcelona
Mensajes: 241
Antigüedad: 11 años, 9 meses
Puntos: 39
Respuesta: Interactuar Php con Ajax o JQuery

Cita:
Iniciado por detective_jd Ver Mensaje
hola, gracias por responder, como has dicho esa es la solución, pero con mis compañeros no le encontramos la vuelta, y vimos varios sitios en internet pero no le damos la tecla.

Que forma de hacer peticiones en ajax, nos recomiendan??

Saludos.
La más simple es utilizando jQuery:

Código Javascript:
Ver original
  1. var parametros = {
  2.     dato1: "El dato",
  3.     dato2: "El dato"
  4. };
  5.  
  6. $.ajax({
  7.     url: "archivo/al-que/enviar.php",
  8.     data: parametros,
  9.     type: "POST",
  10.     success: function(r){
  11.         /* AQUÍ EVALUAMOS LA RESPUESTA DE LA PETICIÓN AJAX */
  12.     }
  13. });

Puedes encontrar mucha información en la página oficial de jQuery con ejemplos que podrás entender facilmente.
__________________
Diseño Web - Arisman Web

Etiquetas: ajax, jquery, usuarios
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 21:49.