-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathclass.aluasig.php
More file actions
78 lines (71 loc) · 2.64 KB
/
Copy pathclass.aluasig.php
File metadata and controls
78 lines (71 loc) · 2.64 KB
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
<?php
require_once('class.db.php');
class aluasig{
private $conn;
private $nota;
private $idAlumno;
private $idAsignatura;
public function __construct(float $n=0.0, int $idal=0, int $idasi=0){
$this->conn = new db();
$this->nota = $n;
$this->idAlumno = $idal;
$this->idAsignatura = $idasi;
}
public function obtenerDatos($idAlumno){
$asi = "";
$mod = "";
$cur = "";
$nota = 0; // Variable local para manejar el valor de nota
// Convertir $idAlumno a double
$idAlumno = doubleval($idAlumno);
$consulta = "SELECT nota, nombre, modulo, curso FROM alu_asig, asignaturas WHERE id_alum = $idAlumno AND id_asig = id";
$sentencia = $this->conn->getConn()->prepare($consulta);
$sentencia->execute();
$sentencia->bind_result($nota , $asi, $mod, $cur);
$alumnoCalificaciones = array();
while ($sentencia->fetch()) {
if ($nota === null) { // Verificar si nota es null
$nota = 2;
}
$alumnoCalificaciones[] = array(
"nota" => $nota,
"asignatura" => $asi,
"modulo" => $mod,
"curso" => $cur
);
}
$sentencia->close(); // Cerrar la sentencia para liberar recursos
return $alumnoCalificaciones;
}
public function nuevaNota($alumnoDni, $curso, $modulo, $asignatura, $nota){
$id_al = "";
$id_as = "";
$consultaIds = "SELECT id_alum, id_asig
FROM alumnos, asignaturas, alu_asig
WHERE id_alum = alumnos.id
AND id_asig = asignaturas.id
AND dni = ?
AND asignaturas.nombre = ?
AND modulo = ?
AND curso = ?;";
$sentencia = $this->conn->getConn()->prepare($consultaIds);
$sentencia->bind_param("sssi", $alumnoDni, $asignatura, $modulo, $curso);
$sentencia->bind_result($id_al, $id_as);
$sentencia->execute();
$sentencia->fetch();
$sentencia->close();
$this->updatear($id_al, $id_as, $nota);
}
public function updatear($id_al, $id_as, $nota){
$consulta = "UPDATE alu_asig SET nota = ? WHERE id_alum = ? AND id_asig = ?;";
$sentencia = $this->conn->getConn()->prepare($consulta);
$sentencia->bind_param("iii", $nota, $id_al, $id_as);
// Comprobar que el update se ha realizado correctamente
if ($sentencia->execute()) {
return true;
} else {
return false;
}
}
}
?>