Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/02/2015, 06:00
Begotten
 
Fecha de Ingreso: enero-2015
Ubicación: Valparaiso
Mensajes: 88
Antigüedad: 9 años, 3 meses
Puntos: 0
Dividir fechas para insertar en bd

Hola, tengo un problema que me esta quitando bastante tiempo y no puedo dar con la solución, tengo un formulario en donde envío por ajax una variable "fecha" mas otras variables para ser agregada en la tabla "cuentas" pero antes debo separar la fecha y obtener el numero del mes y de año para ingresar estos datos en una consulta que busca el atributo "codigo" dentro de la tabla "mes" en donde los atributos coincidan y luego se ejecuta el insert con los datos del formulario y el código obtenido en la consulta. El problema es que al ejecutar esto, no se inserta nada en la bd pero si borro la consulta en la tabla "mes" y reemplazo ese dato por un numero la cosa si funciona por lo que el problema claramente esta en la consulta a "mes".

Formulario:
Código PHP:
Ver original
  1. <form method="post">
  2.                     <div class="field-box">
  3.                         <label>Fecha </label>
  4.                         <div class="col-md-7">
  5.                             <input class="form-control" name="fecha" id="fecha" required type="text"/>
  6.                             <script type="text/javascript">
  7.                             RANGE_CAL_2 = new Calendar({
  8.                                 inputField: "fecha",
  9.                                 dateFormat: "%Y-%m-%d",
  10.                                 trigger: "fecha",
  11.                                 bottomBar: false,
  12.                                 onSelect: function() {
  13.                                     var date = Calendar.intToDate(this.selection.get());
  14.                                     LEFT_CAL.args.max = date;
  15.                                     this.hide();
  16.                                 }
  17.                             });
  18.                             function clearRangeEnd() {
  19.                                 document.getElementById("fecha").value = "";
  20.                                 LEFT_CAL.args.max = null;
  21.                             };
  22.                             </script>
  23.                         </div>                            
  24.                     </div>
  25.                     <div class='field-box'>
  26.                         <label>Detalle</label>
  27.                         <div class='col-md-7'>
  28.                             <input type='text' class='form-control' name='deta' id='deta'>
  29.                         </div>
  30.                     </div>
  31.                     <div class='field-box'>
  32.                         <label>Monto</label>
  33.                         <div class='col-md-7'>
  34.                             <input type='text' class='form-control' name='monto' id='monto'>
  35.                         </div>
  36.                     </div>...
  37. //siguen datos

Registro:
Código PHP:
Ver original
  1. <?php
  2. include_once('conexion.php');
  3.    
  4.   $fecha = $_POST['fecha'];
  5.   $deta = $_POST['deta'];
  6.   $monto = $_POST['monto'];
  7.   list($anio, $mes, $dia)= explode("-", $fecha);
  8.   $sql2 = "SELECT * FROM mes m WHERE m.nombre_mes = '$mes' AND m.anio_mes= '$anio' LIMIT 1;";
  9.   $res2 = $con->query($sql2);
  10.   if($mes_cuentas = $res2->fetch_array()){
  11.     $mesId = $mes_cuentas[0];
  12. }
  13.     $sql = "INSERT INTO cuenta (mes_codigo, saldos_codigo, fecha, detalle, cantidad) VALUES ('$mesId',1, '$fecha', '$deta', '$monto');";
  14.     $res = $con->query($sql);
  15.    
  16.     if ( isset( $res ) )
  17.         echo "correcto";
  18.     else
  19.         echo "error";  
  20. ?>
Tablas: