Consulta a bd

Hola nuevamente, ya casi tengo terminada la web, muy agradecido por todas tus respuestas, sin tu ayuda no hubiera llegado hasta aquí. Verás ahora quiero sacar un listado de las personas que han pagado, he creado en la bd un campo tipo tinyint para introducir si la persona ha realizado el pago, no se si este será el tipo de campo más adecuado, he leído que el tipo boolean da problemas. El caso es que si este campo tiene un 0 (por defecto) quiero que al realizar la consulta a la bd salga "No pagado", y si tiene un valor distinto, (normalmente 1) que salga "Pagado" he intentando hacerlo mediante un if anidado, pero me he liado y me da un error al ejecutar en el servidor:
Parse error: syntax error, unexpected '{', expecting '(' in /home/a8340965/public_html/formulario/consulta.php on line 43
El código que tengo es:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin título</title>
</head>
<body>
<center>
<h1> Listado de inscritos</h1>
<table border="1" cellspacing=1 cellpadding=2 style="font-size: 8pt">
<tr>
<td><font face="verdana"><b>Número</b></font></td>
<td><font face="verdana"><b>Nombre</b></font></td>
<td><font face="verdana"><b>Apellidos</b></font></td>
<td><font face="verdana"><b>Club</b></font></td>
<td><font face="verdana"><b>Localidad</b></font></td>
<td><font face="verdana"><b>Pagado</b></font></td>
</tr>
<?
mysql_connect("mysql6.000webhost.com","a8340965_rutacab","canis lupus");
//colocar el nombre de la base de datos
mysql_select_db("a8340965_rutacab");
$sql = "select * from datos";
$resultados = mysql_query($sql);
if (mysql_errno() != 0) {
  echo mysql_error();
}
else {
  while($row = mysql_fetch_array($resultados))
  { if ($Pagado==0)
 {
     echo '
<td>'.$row["id"].'</td>
'.'
<td>'.$row["Nombre"].'</td>
'.'
<td>'.$row["Apellidos"].'</td>
'.'
<td>'.$row["Club"].'</td>
'.'
<td>'.$row["Localidad"].'</td>
'.'
<td>'.'No'.'</td>
'.'
</tr>
';
 }else if
{
echo '
<td>'.$row["id"].'</td>
'.'
<td>'.$row["Nombre"].'</td>
'.'
<td>'.$row["Apellidos"].'</td>
'.'
<td>'.$row["Club"].'</td>
'.'
<td>'.$row["Localidad"].'</td>
'.'
<td>'.'Si'.'</td>
'.'
</tr>
';
 }
}
?>
</table>
</center>
</body>
</html>
Gracias y un saludo fenómeno!

1 respuesta

Respuesta
1
El método que me comentas para distinguir pagado de no pagado parece bueno.
Sobre el fallo, creo que es la línea 49: "}else if" se te ha olvidado la condición, con quitar el if se solucionaría.
También parece que te falta una llave justo antes del "?>" final.
Además, esta condición no te va a funcionar: "if ($Pagado==0)" lo correcto sería: "if ($row['Pagado'] == 0)".

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas