Yendo por partes la estructura de la tabla es la siguiente:
Código MySQL:
Ver original
Lo que busco hacer con el script es asignar los valores para el campo idnumber de cada una de las tuplas de la tabla mdl_courses.
La función de actualización es la siguiente:
Código PHP:
function modIdCourse(){
$query = "SELECT mc.id FROM mdl_course mc";
$res = mysql_query($query);
if ($res == false){
echo "Error en la consulta de Cursos Moodle.<br/>";
}else{
while ($row = mysql_fetch_array($res)){
$id = $row[0];
echo "id: $id / ";
$idnum = "'C".$id."'";
echo "idnumber: $idnum";
$query = "UPDATE mdl_course SET idnumber = $idnum WHERE idnumber = $id";
$res = mysql_query($query);
if ($res == false){
echo "Error en la actualizacion.<br/>";
}else{
echo "Curso $id actualizado. <br/>";
}
}
}
}
Cita:
Y la salida del log de php es:La libreria db fue incluida correctamente.
id: 1 / idnumber: 'C1'Curso 1 actualizado.
id: 1 / idnumber: 'C1'Curso 1 actualizado.
Cita:
La línea 26 es la siguiente: while ($row = mysql_fetch_array($res))[18-Apr-2011 14:30:54] PHP Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /media/Datos/www/manantiales/alumnos/db.php on line 26
Intenté con todos los tipos de comillas posibles, y no logro que modifique todos los campos, ni siquiera actualiza la primer tupla que es la que informa los echos.
Bueno, agradecería cualquier pista, desde ya muchas gracias!.