Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/12/2013, 12:42
Avatar de Briss
Briss
 
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 10 meses
Puntos: 12
Exclamación Bloquear pago...

Estoy haciendo lo siguiente tengo un formulario donde elijo los meses que deseo pagar… seleccionándolos con un checkbox
Este es el código 1.php

Código PHP:
mysql_select_db($database_connection$connection);
$query_pagos=sprintf ("SELECT * FROM mensualidades  Where periodo=%s "GetSQLValueString($ID"text"));
pagos =  mysql_query($query_ pagos$connection) or die(mysql_error());
    echo 
"<h1>Meses</h1>";
    echo 
"<form method=\"post\" action=\"comprobar_pagos.php\" >
    <table>
    <tr>
    <td>Mes</td>
               <td></td>
    </tr>"
;

    
$filas mysql_num_rows($pagos);
    if(
$filas == 0){
        echo 
"<tr>
                <td colspan=6>No hay datos registrados.</td>
            </tr>"
;
    }else{
        while(
$pagos 2 mysql_fetch_array($pagos)){
            echo 
"<tr>
<td>"
.$ pagos 2['Mes']."</td>                    
<td><input type=\"checkbox\" name=\"clases[]\" value=\""
.$ pagos ['id_mensualidad']."\"></td>
            </tr>"
;
        }
        echo 
"<tr>
            <td>
            
<input type=\"submit\" value=\"Pagos realizados\">
            </td>
            </tr>"
;
    }
    
    echo 
"</table></form>";
?> 

Después de elegir los meses proceso otro archivo comprobar_pagos.php
Aquí muestro los meses elegidos… pero además de esto verifico que no tengan precedentes (meses previos obligatorios a pagar). Hasta acá voy bien… ejemplo si elijo Enero ,Febrero, Marzo…
Enero no tiene precedente …. Febrero si (Enero pero suponiendo que ya se pago no hay problema)… Marzo si… (Sería Febrero el pago previo - sin realizar)
Entonces me muestra mis datos
Clave…..Mes….…Imagen
1………...Enero…..pagar.png
2………...Febrero..pagar.png
3………...Marzo…..pagar.png

En otra línea me muestra lo siguiente :
No se ha registrado el pago previo del Mes de: Febrero… y un botón para regresar a eligir nuevamente los meses…

Pero me gustaría hacer que el mensaje no aparezca sino que mi imagen cambie por ejemplo si no hay un pago previo sin realizar muestre pagar.png (tipo carrito de compras agregar)… y si el pago previo no se ha realizado muestre otra imagen bloqueo.png… y lógicamente no se pueda agregar ese mes….

Este es mi código comprobar_pagos.php

Código PHP:
if(!isset($_POST['clases'])){
        
    }
    
    
$clases $_POST['clases'];
    
    echo 
"<table>
            <tr>
            <td>Clave</td>
            <td>Mes</td>
            </tr>"
;
if( 
is_array $_POST 'clases' ])) 

    foreach(
$clases as $clase){
    
$q_clase $clase;
        
        
$query_precedente "SELECT M.Mes FROM mensualidades AS M WHERE M.id_mensualidad= (SELECT MI.precede  FROM mensualidades AS MI where MI.id_mensualidad= '$q_clase')";
        
        
$query_precedente_detalle "SELECT M.Mes, M.precede FROM mensualidades AS M WHERE M.id_mensualidad= (SELECT MI.precede FROM mensualidades AS MI, mpagadas AS CI WHERE MI.id_mensualidad= CI.id_mensualidad= '$q_clase')";
        
        
$result_precedente = @mysql_query($query_precedente$connection) or die(mysql_error());
        
        
$filas mysql_num_rows($result_precedente);
        
$tiene_precedente true;
        if(
$filas == 0){
            
$tiene_precedente false;
        }else{
            
$precedente mysql_fetch_array($result_precedente);
            
$mes $precedente['Mes'];
            
            
$result_precedente_detalle = @mysql_query($query_precedente_detalle$connection) or die(mysql_error());
            
$filas mysql_num_rows($result_precedente_detalle);
            if(
$filas == 0){
                
$errores[$clase] = "No se ha registrado el pago previo del Mes de: $mes";
            }else{
                
            }
        }
        
        
$query_clase "SELECT * from mensualidades WHERE id_mensualidad= '$q_clase'";
        
        
$result_clase mysql_query($query_clase$connection) or die(mysql_error());
        
        
$filas mysql_num_rows($result_clase);
        if(
$filas != 0){#Algo va realmente mal si las filas son 0
            
$clase mysql_fetch_array($result_clase);
            
            echo 
"<tr>
                     <td>"
.$clase['id_mensualidad']."</td>
            <td>"
.$clase['Mes']."</td>
            <td><a href='addToCart.php?id={$clase['id_mensualidad']}&name={$clase['Mes']}' class='customButton'>"
;
echo 
"<img src='images/pagar..png' title='Pagar' /></td>
                    
                </tr>"
;
        }else{
            echo 
"<tr><td colspan=6>No seleccionó mes</td></td></tr>";
        }
    }
    
    echo 
"<tr>
            
        </tr>"
;
        
    
#Ofrecer pagar o corregir    
    
foreach($errores as $clase_clave => $error){
        echo 
"<tr>
                <td>$clase_clave</td>
                <td colspan=5>$error</td>
            </tr>"
;
    }
        
    if(
count($errores) == 0){ #No hay errores
        
        
foreach($clases as $clase){
            echo 
"<input type=\"hidden\" value=\"$clase\" name=\"clases[]\">";
        }
        
        
    }else{
        
        echo 
"<tr><td colspan=6><form name=\"operacion\" method=\"post\" action=\"1.php\">
            
            <input type=\"submit\" value=\"Corregir\"></form></td></tr>"
;
    }
        }        
    echo 
"";
    
    
#Fin de tabla
    
echo "</table>";
    
    
?> 
Desde GRACIAS :)