Ver Mensaje Individual
  #3 (permalink)  
Antiguo 20/08/2015, 01:35
Avatar de dashtrash
dashtrash
Colaborador
 
Fecha de Ingreso: abril-2007
Ubicación: Ni en Sevilla,ni en Sanlúcar..qué más da..
Mensajes: 927
Antigüedad: 17 años, 1 mes
Puntos: 270
Respuesta: Corregir/mejorar mi código

Sólo una puntualización sobre los tipos de dato.
Tanto
Código PHP:
Ver original
  1. $insert->setType('sss')
como
Código PHP:
Ver original
  1. switch(gettype($param)) {
  2.                         case "integer": case "boolean": $bind_params[0] .= "i"; break;
  3.                         case "double" : $bind_params[0] .= "d"; break;
  4.                         case "blob"   : $bind_params[0] .= "b"; break;
  5.                         default       : $bind_params[0] .= "s"; break;
  6. }
sugieren que la gestión de los tipos de datos es algo que concierne a la base de datos, cuando en realidad, es un problema que va desde los sistemas de almacenamiento, al código javascript ejecutado en el cliente.
Yo haría lo siguiente:
Código PHP:
Ver original
  1. $metaData=array(
  2.    "cliente"=>array("type"=>"STRING","MIN"=>...,"MAX"=>.........),
  3.    "email"=>array("type"=>"STRING","MIN"=>...,"MAX"=>....,"REGEXP"=>....)
  4.    ....
  5. );
Mientras no crees modelos, que unan esa metadata con los datos en sí, la secuencia
Código PHP:
Ver original
  1. $insert->setType('sss');                //   Types: s = string, i = integer ...
  2.         $insert->setParams($data);
pasa a ser
Código PHP:
Ver original
  1. $insert->setParams($data,$metaData);