acudo de nuevo a este medio, para ver si alguien me puede ayudar :)
veran, tengo un formulario en el cual los campos se llenan con los datos de un docente que esta en la base de datos, y 3 select
uno de materias, otro de materias impartidas y otro de materias nuevas. LO QUE QUIERO HACER ES MODIFICAR LO DE LOS SELECT
en el select de materias me muestra todas las materias registradas en la base de datos Y aquellas que no estan en los otros 2 select.
en el select de materias impartidas me muestra las materias que habia seleccionado el docente, que se guardaron en la BD. y en el select de materias Nuevas me muestra las materias que habia seleccionado el docente, que se guardaron en la BD.
LO QUE QUIERO HACER ES que primero me borre los datos de esa tabla donde guardo las materias impartidas y nuevas de ese docente con ese periodo
y me inserte las que modifico.
ya lo intente, y si me borra todos los registros de la tabla de la BD de ese docente y ese periodo... pero al momento de insertar lo modificado, solo me inserta el ultimo registro
no se que este haciendo mal :( porfitas,
aqui esta mi codigo donde hago los selects:
Código PHP:
<table cellpadding="0" cellspacing="0" >
<tr>
<td class="contacto">
<div><center><h3><u>MATERIAS:</u></h3></center></div>
<br>
<select id="selectMaterias" name="selectMaterias" size="10" multiple="multiple" style="width: 280px;" >
<?php
$query = mysql_query ("SELECT * FROM docentes WHERE NoTarjeta = '$t'");
$renglon=mysql_fetch_array($query);
$iddocente =$renglon["idDocente"];
$result = mysql_query("SELECT idMateria,nombre_materia FROM materias WHERE idMateria not in(SELECT idMateria FROM rieee_materias WHERE rieee_materias.idDocente = '$iddocente' AND rieee_materias.periodo = '$p') ORDER BY nombre_materia ASC");
while($row = mysql_fetch_array($result))
{
$valor = $row["idMateria"] ; //Asignamos el id del campo que quieras mostrar
$nombre = $row["nombre_materia"]; // Asignamos el nombre del campo que quieras mostrar
echo "<option value=".$valor.">".$nombre."</option>"; //Llenamos el option con su value que sera lo que se lleve al archivo registrar.php y que sera el id de tu campo y luego concatenamos el nombre que se mostrara en el combo
}
?>
</select>
</td>
<td>
<input type="button" id="agregarImpartida" name="agregarImpartida" value=">" style="width: 50px"/><br/>
<input type="button" id="quitarImpartida" name="quitarImpartida" value="<" style="width: 50px"/><br/>
</td>
<td class="contacto">
<div><h3><u>MATERIAS IMPARTIDAS:</u></h3></div>
<label>Por orden de prioridad:</label>
<select id="selectImpartidas" name="selectImpartidas" size="10" multiple="multiple" style="width: 200px;">
<?php
$result2 = mysql_query("SELECT rieee_materias.idMateria, nombre_materia FROM rieee_materias, materias WHERE rieee_materias.idMateria = materias.idMateria AND rieee_materias.idDocente = '$iddocente' AND rieee_materias.tipo_materia = 'I' AND rieee_materias.periodo = '$p' ORDER BY rieee_materias.prioridad");
while($row = mysql_fetch_array($result2))
{
$valor = $row["idMateria"] ; //Asignamos el id del campo que quieras mostrar
$nombre = $row["nombre_materia"]; // Asignamos el nombre del campo que quieras mostrar
echo "<option value=".$valor.">".$nombre."</option>"; //Llenamos el option con su value que sera lo que se lleve al archivo registrar.php y que sera el id de tu campo y luego concatenamos el nombre que se mostrara en el combo
}
?>
</select>
</td>
<td>
<input type="button" id="agregarNueva" name="agregarNueva" value=">" style="width: 50px"/><br/>
<input type="button" id="quitarNueva" name="quitarNueva" value="<" style="width: 50px"/><br/>
</td>
<td class="contacto">
<div><h3><u>MATERIAS NUEVAS:</u></h3></div>
<label>Por orden de prioridad:</label>
<select id="selectNuevas" name="selectNuevas" size="10" multiple="multiple" style="width: 200px;">
<?php
$result3 = mysql_query("SELECT rieee_materias.idMateria, nombre_materia FROM rieee_materias, materias WHERE rieee_materias.idMateria = materias.idMateria AND rieee_materias.idDocente = '$iddocente' AND rieee_materias.tipo_materia = 'N' AND rieee_materias.periodo = '$p' ORDER BY rieee_materias.prioridad");
while($row = mysql_fetch_array($result3))
{
$valor = $row["idMateria"] ; //Asignamos el id del campo que quieras mostrar
$nombre = $row["nombre_materia"]; // Asignamos el nombre del campo que quieras mostrar
echo "<option value=".$valor.">".$nombre."</option>"; //Llenamos el option con su value que sera lo que se lleve al archivo registrar.php y que sera el id de tu campo y luego concatenamos el nombre que se mostrara en el combo
}
?>
</select>
</td>
</tr>
<input type='hidden' name='formularioActivo' id="formularioActivo" value="N" />
<input type='hidden' name='selecImpartidas' id="hidImpartidas" />
<input type='hidden' name='selecNuevas' id="hidNuevas" />
</table>
Código PHP:
function modificarmateriasRieee($iddocente,$idmat,$prioridad)
{
$sql="DELETE FROM rieee_materias WHERE idDocente='$iddocente' AND periodo = '".$this->Periodo."';";
$resultado=mysql_query($sql);
$sql="SET AUTOCOMMIT=0;";
$resultado=mysql_query($sql);
$sql="BEGIN;";
$resultado=mysql_query($sql);
$sql="INSERT INTO rieee_materias (idDocente,idMateria,prioridad,tipo_materia,periodo)
VALUES ('$iddocente',
'$idmat',
'$prioridad',
'".$this->tipoMateria."',
'".$this->Periodo."');";
$resultado=mysql_query($sql);
if($resultado)
{
$sql="COMMIT;";
$resultado=mysql_query($sql);
return true;
}
else
{
$sql="ROLLBACK;";
$resultado=mysql_query($sql);
return false;
}
}