Ver Mensaje Individual
  #4 (permalink)  
Antiguo 01/03/2013, 07:45
Sandiuga
 
Fecha de Ingreso: febrero-2013
Mensajes: 21
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: Ingresar Maximo registros segun campo PHP-ORACLE

Gracias por responder , he tratado de hacer una consulta que haga eso
pero no me funciona en la comparacion
explico de nuevo la logica,

si un conductor tiene 3 caratulas en estado "abierta" al intentar ingresar una 4 caratula abierta no debe permitir ingresar

la consulta:

Código PHP:
Ver original
  1. Código PHP:
  2. <?php include("php_conn.php");
  3.  
  4. echo $sql = "SELECT COUNT (*) FROM CARATULAS WHERE estado='Abierta' AND conductor = '".$_POST["conductor"]."'";
  5. $cabiertas = oci_parse($objConnect, $sql);    
  6. oci_execute($cabiertas);    
  7. echo "resultado : ".oci_num_rows($cabiertas)."<br/>".$sql."<br/>";
  8.  
  9.  
  10. if (oci_num_rows($cabiertas) >=3)
  11. {
  12.   // YA EXISTEN 3 CARATULAS ABIERTAS PARA UN CONDUCTOR ,MOSTRAR LA ADVERTENCIA    
  13. echo "<br><br><br><div align='center' style='color:#FFF; font-family:Arial, Helvetica, sans-serif' >
  14.      <b>NO PUEDE INGRESAR MAS 3 CARATULAS ABIERTAS POR CONDUCTOR: [".$e['message']."]</b></div>";    
  15. }
  16. else
  17. {
  18.   //EXISTEN MENOS DE 3 ,INSERTAR
  19.      
  20. $estado = "Abierta";//INGRESO POR DEFECTO CARATULA ABIERTA
  21.  
  22. echo $strSQL = "INSERT INTO CARATULAS (id_solicitud, id_nomina, fecha_creacion,fecha_apertura, usuario,
  23.           dine_apertura, estado, conductor, empresa)                    
  24.              values ('".$_POST["n_solicitud"]."',        
  25.            '".$_POST["n_nomina"]."',
  26.            TO_DATE('".$_POST["f_rendicion"]."','dd-mm-yyyy'),
  27.            TO_DATE('".$_POST["f_apertura"]."','dd-mm-yyyy'),            
  28.            '".$_POST["usuario"]."',
  29.            '".$_POST["p_apertura"]."',      
  30.            '".$estado."',//INGRESO POR DEFECTO              
  31.            '".$_POST['conductor']."',
  32.            '".$_POST["empresa"]."')";
  33.     $objParse = oci_parse($objConnect, $strSQL);
  34.     $objExecute = oci_execute($objParse, OCI_DEFAULT);
  35.    
  36.     if($objExecute)
  37.     {
  38.         oci_commit($objConnect); //*** Commit Transaction ***//
  39.         echo "<br><br><br><div align='center' style='color:#FFF; font-family:Arial, Helvetica, sans-serif' ><b>Caratula Creada exitosamente.</b></div>";
  40.         $tabla = true;
  41.     }
  42.     else
  43.     {
  44.         oci_rollback($objConnect); //*** RollBack Transaction ***//
  45.         $e = oci_error($objParse);
  46.         echo "<br><br><br><div align='center' style='color:#FFF; font-family:Arial, Helvetica, sans-serif' ><b>Error al Crear Caratula: [".$e['message']."]</b></div>";
  47.         $tabla = false;
  48.     }
  49.     oci_close($objConnect);
  50.    
  51.     if($tabla)
  52.     {        
  53.        
  54.     }
  55.    
  56.  }
  57.    
  58. ?>