Me he estado mirando tu codigo .No le habias puesto metodo de envio al formulario ( GET O POST ) y cuando le decias $codigo =$_GET['codigo'] no te debe devolver nada.
Mirate el codigo que te he puesto y lo entenderas:
Código:
<?php
if(isset($_GET['valida'])){
//Todo tu código
include("conectabd2.php");
$link=Conectarse();
$result=mysql_query("select * from usuarios",$link);
$codigo=$_POST['codigo'];
$usuario=$_POST['usuario'];
$password=$_POST['password'];
while($row = mysql_fetch_array($result))
{
if (($row["usr_code"] == $codigo) && ($row["usr_login"] == $usuario) && ($row["usr_pass"] == $password))
{
header ("Location: Descargas.php");
}
else
{
header ("Location: Login4.php?valida=1");
}
mysql_free_result($result);
mysql_close($link);
}
}else{
//El código que tengas en login y el formulario
echo "<form action='login4.php?valida=1' method='post'> \n";
echo "<div align='center'>
<center><table width='300' bgcolor='#0000FF'>
<tr><td><table border='0' width='300' bgcolor='#000000'>
<tr><td width='300' colspan='2' bgcolor='#0000FF'>
<p align='center'><font color='#FFFFFF'>Usuario registrado</font></td></tr>
<tr bgcolor='#000000'><td width='150' class='menulateral'>Codigo Cliente:</td>
<td width='150'><div align='center'>
<input type='text' name='codigo' size='20'>
</div></td>
</tr>
<tr bgcolor='#000000'>
<td width='50' class='menulateral'>Usuario:</td>
<td width='50%'><div align='center'>
<input type='text' name='usuario' size='20'>
</div></td>
</tr>
<tr bgcolor='#000000'>
<td width='50%' class='menulateral'>Password: </td>
<td width='50%'>
<div align='center'>
<input type='password' name='password' size='20'>
</div></td>
</tr>
<tr bgcolor='#000000'>
<td><div align='center'>
<input type='submit' value='Aceptar' name='Accion'>
</div></td>
<td><div align='center'>
<input type='reset' value='Borrar' name='Accion'>
</div></td>
</tr>
<tr bgcolor='#000000'>
</tr>
</table></td>
</tr>
</table>
</center>
</div>
</form>";
}
?>
He pasado el metodo del formulario a POST y cuando le asigno las variables las leo de POSt i no de GET como hacias.
A ver que tal?
pd- Si los headers no funcionan mira de que en el fichero que incluyes con el include no tenga espacios en blanco ni al principio ni al fin porque sino se envian las cabeceras a servidor y suda del header que pones. Venga, animo