PHP - Trabajando con precedentes que deben cumplirse

   
Vista:

Trabajando con precedentes que deben cumplirse

Publicado por Briss (3 intervenciones) el 07/01/2014 01:27:04
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
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

Código PHP:

<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 …
Enero no tiene precedente …. Febrero si (Enero)…
Entonces me muestra mis datos y una imagen si no tiene precedente pagar… en caso contrario bloquea el pago
Clave…..Mes….…Imagen
1………...Enero…..pagar.png
2………...Febrero...pagobloqueado.png
Bien hasta acá todo bien… pero tengo que hacer unos cambios…. Ejemplo si selecciono Febrero solamente me muestre la imagen de bloqueo (ya lo hace)… pero si selecciono Enero… y Febrero… es decir el mes y su precedente… no quede bloqueado sino que deje pagar (hasta ahora muestra en Enero pagar, Febrero bloqueado)….
Trabajo con dos tablas…
Mensualidades… y pagos…
Este es mi código





1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
comprobar_pagos.php
…if(!isset($_POST['clases'])){
	}
	$clases = $_POST['clases'];
 
	echo "<table>
			<tr>
			<td>Clave</td>
			<td>Mes</td>
				
			</tr>";
if ( !empty($_POST['clases']) && 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, pagos AS CI WHERE and 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 a registrado el pago previo del Mes de: $mes";
 
			}
				else{
				$errores[$clase]='0';
			}
		}
 
		$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){
		$clase = @mysql_fetch_array($result_clase);
$query_precedente_detalle = "SELECT M.Mes, M.precede FROM mensualidades AS M WHERE M.id_ mensualidad = (SELECT MI.precede FROM mensualidades AS MI, pagos AS CI WHERE and 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;
			echo "<tr>
		         	<td>".$clase['id_mensualidad']."</td>
			<td>".$clase['Mes']."</td>
		 <td>".
		$filas7='';
 
		if($filas == 0){
			$tiene_precedente = false;
			echo "<a href='addToCart.php?id={$clase['id_mensualidad']}&name={$clase['Mes']}' class='customButton'>";
			echo "<img src='images/Carrito.png' title='Pagar' />";
		}else{
			$precedente = mysql_fetch_array($result_precedente);
			$materia = $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){
 
				echo "<img src='images/pagoBloqueado.png' title='Realice el Pago Previo' />";
			}
		}
			"</td>
				</tr>";
		}else{
			echo "<tr><td colspan=6>No seleccionó mes</td></td></tr>";
		}
	}
 
	echo "<tr>
	
		</tr>";
 
	echo "</table>";
 
?>

Desde ya Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Trabajando con precedentes que deben cumplirse

Publicado por Briss (3 intervenciones) el 07/01/2014 01:49:26
Como puedo hacer para saber si selecciono un Mes y su precedente???
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar