Problema al mostrar notas de alumno por grado en SQL y PHP

  • Autor Autor clicker
  • Fecha de inicio Fecha de inicio

clicker

Beta
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Saludos Gente FB. tengo el siguiente problema, tengo una tabla de notas, grado, y otras cosas, lo que necesito es que me muestre las notas de X alumno por cada grado Cursado,
bien cuando hago la consulta directa en sql usando esta sentencia.
Insertar CODE, HTML o PHP:
SELECT * FROM nota where fk_alumno='123456' and fk_grado='1' order by fk_grado_materia;
Bien en sql me muestra 10 notas ... todo bien ahi

ahora paso a mostrar esa misma consulta en php...

Insertar CODE, HTML o PHP:
 $sql2="SELECT * FROM nota where fk_alumno='$cedula' and fk_grado='1' order by fk_grado_materia";
	    $link2= mysql_query($sql2);
-- ciclo para imprimir tantas notas sean encontradas
  while ($consulta=mysql_fetch_row($link2))

MAL ahi, no me muestra 10, me muestra 9 nada mas la primera NOTA no la muestra
PRIMERA VEZ que esto me pasa alguien sabe como solucionar esto? les ha pasado?
 
Última edición:
Prueba a cambiar el mysql_fetch_row por mysql_fetch_assoc
 
Igual, me cuenta y muestra 9, el primero no lo muestra 🙁

- - - Actualizado - - -

Ya solucione pero a una manera poco ortodoxa, hize 2 consultas
- una para validar si existen notas, si no existen arroja (NO) en caso que si hay notas, VOLVI hacer la consulta y luego puse el while :S 😱
 
Te recomiendo que empieses a usar PDO para la conexion y consultas a la base de datos la extension mysql es super vieja, poco practica y en la proxima version de PHP estara deprecada.
 
Podrías probar con:
PHP:
$q = mysql_query('SELECT DISTINCT * FROM nota WHERE fk_alumno = \''.$cedula.'\' AND fk_grado = \'1\' ORDER BY fk_grado_materia');
while($consulta = mysql_fetch_row($q))
Saludos