Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/06/2006, 14:32
tarlipes
 
Fecha de Ingreso: diciembre-2002
Ubicación: argentina... de ahí seran veinte cuadras
Mensajes: 382
Antigüedad: 21 años, 4 meses
Puntos: 0
apache se cierra al ejecutar un script php

Esto me esta volviendo loco de verdad....

Por favor, disculpen que postee tanta cantidad de codigo, es que tengo un erroy muy raro y no se que pueda ser.
Cuando hago correr la siguiente pagina, pasa bien por el case "", me deja ingresar los datos,pero cuando envio el formulario, aparece el cartel de windows
"Apache HTTP Server ha detectado un problema y debe cerrarse".

Lo fui frenando con exit y al parece al llegar a cualquiera de los
if (insertar.. (marqué con rojo)
es que tira dicha falla.
descarto que sea un error en la clase pq de la misma manera que la utilizo aca, la vengo utilizando en otros script. ademas, para probar, copié uno de los insertar y lo hice correr solo en otro archivo y funciona.

mil gracias por lo que puedan aportarme, necesito una mano por favor.

Código PHP:
<?require_once("negocios/clsFunciones.php"); //clase funciones
require_once("datos/clsConnection.php"); //clase funciones


$action=$_GET[action];

switch (
$action){
    case 
"":
    
?>
<form action="registrarPagosCCClientes2.php?action=1" method="POST">
<?
if($_POST[chkEfectivo]){
    echo 
"efectivo:<input type=\"text\" name=\"efectivo\"><br>";
}
if (
$_POST[chkCheques]){
    
$cantidad=$_POST[cantidadCheques];
    
?>
    <table width="70%"><tr><td>CHEQUES</td></tr>
    <?
    
for($i=1;$i<=$cantidad;$i++){?>
    
    <tr><td>Número:<input type="text" name="numeroCheque<?echo $i?>"></td>
    <td>Banco<input type="text" name="bancoCheque<?echo $i?>"></td>
    <td>Cuenta<input type="text" name="cuentaCheque<?echo $i?>"></td>
    <td>Razon<input type="text" name="razonCheque<?echo $i?>"></td>
    <td>FechaPago<input type="text" name="fechaCheque<?echo $i?>"></td>
    <td>Importe<input type="text" name="importeCheque<?echo $i?>"></td>
    
    <input type="hidden" name="cantidad" value="<?echo $cantidad;?>">
    <input type="hidden" name="numidFactura" value="<?echo $_POST[numidFactura];?>">
    <input type="hidden" name="numidCliente" value="<?echo $_POST[numidCliente];?>">
    <input type="hidden" name="cantidad" value="<?echo $cantidad;?>">
        </tr>
        
        <?
    
}
?>
<tr><td><input type="submit" value="Ingresar Pago"></td></tr>
</table></form>
<?    
}
break;
    case 
"1":
        
        
        
//*********insertar en tabla facturas************//
        
function insertar($table,$fieldList,$fieldValues,$objConn){

        
$objFunc=new funciones();
        
$objConn->LetTable($table);
        
$objConn->LetFieldList($fieldList);
        
$objConn->LetFieldValues($fieldValues);
        
        
$objConn->conectar();        
        if (
$objConn->insertar()):
            
$insertadotrue;
        else:
            
$insertado=false;
        endif;            
        return 
$insertado;
    }


    
//pasarle los parametros para modificar stock
    
function modificar($table,$id,$fieldList,$fieldValues,$objConn){
            
$objConn->LetTable($table);
            
$objConn->LetFieldList($fieldList);
            
$objConn->LetFieldValues($fieldValues);
            
$objConn->LetWhere("where id=".$id);
            
            
            
$objConn->conectar();
            if (
$objConn->modificar()==false):
                echo 
"ocurrió un error al intentar comprometer stock";
            endif;
    }
            
        
$objFunc=new funciones();
        
$objConn=new conectarMySQL("127.0.1.1","big_User","tarlipes","user");
        
$objConn->conectar();
    
    
    
$idCliente=$_POST["numidCliente"];
    
$idFactura=$_POST["numidFactura"];
    
    
//agrego elrecibo

    
    
$numeroRecibo=$objFunc->devuelveUnValor("tb_ultimorecibo","id","1","ultimoRecibo")+1;
    
//aumentarrecibo en 1    
    
    
$fieldList="idFactura,idCliente,numeroRecibo";
        
$fieldValues="$idFactura,$idCliente,$numeroRecibo";
        
        
        
[
COLOR="Red"]    if (insertar("tb_recibosencabezado",$fieldList,$fieldValues,$objConn)==false){
            Echo 
"ocurrió un error al insertar pedido";
            exit;
        }[/
COLOR]        
        
    
//tomo el ultimo id del recibo
    
$query="select id from tb_recibosEncabezado order by id desc";
    
$objConn->consultar($query);
    if(
$row=$objConn->obtendatos()) {
    
$idReciboEncabezado=$row[id];
    }
    
//tomolas variables del post    

    
        
$efectivo=$_POST["efectivo"];
        
        if (
$_POST[efectivo]!=""){
        
//decremento el monto efectivo de lo pendiente de asignacion    
        
$totalRecibo=$efectivo;
        
        
//agregodetalles reCibo por la parde del efectivo
        
$fieldList="idReciboEncabezado,tipoPago,idDocumento,importe";
        
$fieldValues="$idReciboEncabezado,'ef','0',$efectivo";
        
        if (
insertar("tb_recibosDetalle",$fieldList,$fieldValues,$objConn)==false){
            Echo 
"ocurrió un error al insertar pedido";
            exit;
        }
            
        
        }
        
        
$numidFactura=$_POST[numidFactura];
        
$numidCliente=$_POST[numidCliente];
        
//registro uno a uno los cheques en la tabla de cheques
        
        
for($i=1;$i<=$_POST["cantidad"];$i++){
        
            
            
$numeroCheque=$_POST[numeroCheque.$i];
            
$bancoCheque=$_POST[bancoCheque.$i];
            
$cuentaCheque=$_POST[cuentaCheque.$i];
            
$razonCheque=$_POST[numeroCheque.$i];
            
$fechaCheque=$_POST[fechaCheque.$i];
            
$importeCheque=$_POST[importeCheque.$i];
            
            
$totalRecibo+=$importeCheque;


        
//regitro cheques
        
$fieldList="idFactura,idCliente,numeroCheque,bancoCheque,cuentaCheque,razonCheque,fechaCheque,importeCheque";
        
$fieldValues="$idFactura,$idCliente,'$numeroCheque','$bancoCheque','$cuentaCheque','$razonCheque','$fechaCheque',$importeCheque";
//        
        
if (insertar("tb_registrocheques",$fieldList,$fieldValues,$objConn)==false){
            Echo 
"ocurrió un error al insertar pedido";
            exit;
        }
        
        
//obtengo ultimo idCheque
        
$query="select id from tb_registrocheques order by id desc";
    
$objConn->consultar($query);
    if(
$row=$objConn->obtendatos()) {
    
$idCheque=$row[id];
    }
        
//registro detalles del recibo
        
        
$fieldList="idReciboEncabezado,tipoPago,idDocumento,importe";
        
$fieldValues="$idReciboEncabezado,'ch','$idCheque',$importeCheque";
        
        if (
insertar("tb_recibosdetalle",$fieldList,$fieldValues,$objConn)==false){
            Echo 
"ocurrió un error al insertar pedido";
            exit;
        }
            
        
//decremento el saldo pendiente de acreditar en facturas
        
        
        
}
            
modificar("tb_facturasencabezado",$idFactura,"numeroFactura","pendienteAcreditar".-$totalRecibo,$objConn);
        
        

     
//actualizo  cuenta corriente clientes
     
$fieldList="idCliente,documento,idDocumento,adocumento,aidDocumento,haber";
        
$fieldValues="$idCliente,'rc',$numeroRecibo,'fc',$numeroFactura,$totalRecibo'";
                
        if (
insertar("tb_cuentacorrienteclientes",$fieldList,$fieldValues,$objConn)==false){
            Echo 
"ocurrió un error al insertar cc";
            exit;
        }

break;}
__________________
Juan Pablo

Última edición por tarlipes; 15/06/2006 a las 14:51