Error: Undefined variable

andres
23 de Mayo del 2004
Bueno antes que nada deciros que soy un novato en esto del PHP y mySQL.
Estoy haciendo una página web. Tengo datos en una base mySQL pero aunque no hay problemas con la conexión, no se muestran los resultados que deberían pues me dice que existe un error UNDEFINED VARIABLE.
El meollo son dos archivos: uno es juegos.php con el siguiente código:

<?
// estos son los enlaces a las diferentes letras.

print '<table width="95%" border="0" cellspacing="0" cellpadding="0">';
print "<td>";
print '<a href="juegos2.php?letra=a"><img src="Imagenes/letra_a.gif" border=0 width="50" height="50"></a>';
print '<a href="juegos2.php?letra=b"><img src="Imagenes/letra_b.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=c"><img src="Imagenes/letra_c.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=d"><img src="Imagenes/letra_d.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=e"><img src="Imagenes/letra_e.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=f"><img src="Imagenes/letra_f.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=g"><img src="Imagenes/letra_g.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=h"><img src="Imagenes/letra_h.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=i"><img src="Imagenes/letra_i.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=j"><img src="Imagenes/letra_j.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=k"><img src="Imagenes/letra_k.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=l"><img src="Imagenes/letra_l.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=m"><img src="Imagenes/letra_m.gif" width="50" border=0 height="50"></a>';
print '<br><br>';
print '<a href="juegos2.php?letra=n"><img src="Imagenes/letra_n.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=o"><img src="Imagenes/letra_o.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=p"><img src="Imagenes/letra_p.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=q"><img src="Imagenes/letra_q.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=r"><img src="Imagenes/letra_r.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=s"><img src="Imagenes/letra_s.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=t"><img src="Imagenes/letra_t.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=u"><img src="Imagenes/letra_u.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=v"><img src="Imagenes/letra_v.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=w"><img src="Imagenes/letra_w.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=x"><img src="Imagenes/letra_x.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=y"><img src="Imagenes/letra_y.gif" width="50" border=0 height="50"></a>';
print '<a href="juegos2.php?letra=z"><img src="Imagenes/letra_z.gif" width="50" border=0 height="50"></a>';
?>

Se supone que si pincho en la letra a (por ejemplo) entonces se generará la página que muestra los juegos con la a ¿no? haciendo la llamada a juegos2.php, que tiene el siguiente código:

<?
print '<table width="95%" border="0" cellspacing="0" cellpadding="0">';
print "<td>";
print '<a href="juegos2.php?letra=a"><img src="Imagenes/letra_a.gif" border=0 width="50" height="50"></a><a href="juegos2.php?letra=b"><img src="Imagenes/letra_b.gif" width="50" border=0 height="50"></a>';
print "</td></table><br><br>";
print '<table width="416" border="0" align="center">';
print '<div align="center" class="Estilo24"></div>';
print '<tr bgcolor="#FF99CC">';
print '<td width="74" height="37" align="center" valign="middle" bgcolor="#FFCCFF" scope="col"><div align="center" class="Estilo26"><span class="Estilo28">Pantalla</span></div></td>';
print '<th width="233" bgcolor="#FF99CC" scope="col"><div align="center" class="Estilo27"><h1 class="Estilo34">Nombre</h1></div></th>';
print '<th width="95" bgcolor="#FFCCFF" scope="col"><div align="center" class="Estilo34">Formato</div></th>';
print '</tr>';

//nos conectamos a mysql
$cnx = conectar ();
//consulta.
$sql = "select * from juegos where letra='".$letra."' order by letra";
$rs = mysql_query($sql);
while ($row = mysql_fetch_object($rs)){
print '<tr>';
if ($row->imagen =="") {
print '<td><img src=no_foto.jpg border=0></a></td>';
}else{
print '<td><a href="'.$row->archivo.'"><img src='.$row->imagen.' border=0></a></td>';
}
print '<td bgcolor="#FFCCFF"><div align="left" class="Estilo33">'.$row->nombre.'</div></td>';
print '<td bgcolor="#FF99CC"><div align="center" class="Estilo33">'.$row->formato.'</div></td><tr>';
}

Pero lo que ocurre es que me sale el siguiente mensaje:
Notice: Undefined variable: letra in c:easyphp1-7wwwnuevosjuegos2.php on line 109
Sin embargo el campo letra está definido en mySQL.
¿Alguien puede ayudarme? ¿Cómo defino la variable letra para que me la coja el PHP?
Gracias de antemano y perdón por mi falta de claridad.