Ver Mensaje Individual
  #3 (permalink)  
Antiguo 21/08/2017, 07:09
Avatar de xfxstudios
xfxstudios
 
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 8 años, 10 meses
Puntos: 263
Respuesta: Ejecutar función php desde ajax - jquery

Yo usaria clases para organizar mejor el documento:

PHP:
Código PHP:
Ver original
  1. namespace ClassName
  2.  
  3. class ClassName
  4. {
  5.     //Variables con tados para tu conexion
  6.     private $user = "";
  7.     private $pass = "";
  8.     private $host = "";
  9.     private $base = "";
  10.    
  11.     function __construct()
  12.     {
  13.         //Conexion a BD
  14.         $db = new MySQLi($this->host, $this->user, $this->pass, $this->base);
  15.         if($db->connect_error) {
  16.             die('Error de conexion ('.$db->connect_errno.')'
  17.                 .$db->connect_errno);
  18.         };
  19.  
  20.         $this->con = $db;
  21.     }
  22.  
  23.     public function claseA($X){
  24.         $a = $this->con->query("SELECT * FROM tabla WHERE campo = '$X[0]'");
  25.         $t = mysqli_num_rows($a);
  26.         //bla bla bla
  27.     }
  28.  
  29.     public function claseB($X){
  30.         $a = $this->con->query("SELECT * FROM tabla WHERE campo = '$X[0]'");
  31.         $t = mysqli_num_rows($a);
  32.         //bla bla bla
  33.     }
  34.  
  35.     public function claseC($X){
  36.         $a = $this->con->query("SELECT * FROM tabla WHERE campo = '$X[0]'");
  37.         $t = mysqli_num_rows($a);
  38.         //bla bla bla
  39.     }
  40.  
  41. }//end class
  42.  
  43. $p = new ClassName();
  44.  
  45. switch ($_POST['tipo']) {
  46.     case 'claseA':
  47.             echo $p->claseA($_POST);//Le pasamos los valores del ajax a la funcion correspondiente
  48.     break;
  49.  
  50.     case 'claseB':
  51.             echo $p->claseB($_POST);//Le pasamos los valores del ajax a la funcion correspondiente
  52.     break;
  53.  
  54.     case 'claseC':
  55.             echo $p->claseC($_POST);//Le pasamos los valores del ajax a la funcion correspondiente
  56.     break;
  57.    
  58. }

JS:
Código Javascript:
Ver original
  1. $.post('rutaaarchivo/accion.php',
  2.             {
  3.                 'tipo':'claseA',
  4.                 'valor1':'valo 1'
  5.                 'valor2':'valor 2'
  6.                 'valor3':'valor 3'
  7.             },
  8.             function(resp){
  9.                 console.log(resp);
  10.         })

lo digo por experiencia, he utilizado este metodo en muchos de mis trabajos con exito. Saludos
__________________
[email protected]
HITCEL