Coloquei o código todo, apenas para visualização, já que o que interessa é somente a última parte.
Os valores NULL eu teria de inserir nos campos n1, n2, n3 e n4
<? $form_n1 = $_POST[form_n1];
unset($_POST[form_n1]);
$form_n2 = $_POST[form_n2];
unset($_POST[form_n2]);
$form_n3 = $_POST[form_n3];
unset($_POST[form_n3]);
$form_n4 = $_POST[form_n4];
unset($_POST[form_n4]);
$form_n5 = $_POST[form_n5];
unset($_POST[form_n5]);
$form_nota = $_POST[form_nota];
unset($_POST[form_nota]);
$form_obs = $_POST[form_obs];
unset($_POST[form_obs]);
$form_periodo = $_POST[form_periodo];
unset($_POST[form_periodo]);
$form_faltas = $_POST[form_faltas];
unset($_POST[form_faltas]);
$form_datas_falta = $_POST[form_datas_falta];
unset($_POST[form_datas_falta]);
$form_carga = $_POST[form_carga];
unset($_POST[form_carga]);
$form_resultado = $_POST[form_resultado];
unset($_POST[form_resultado]);
$form_seg = $_POST[form_seg];
unset($_POST[form_seg]);
include "../dbconfig.php";
if ($_SESSION['professor'] == "" or $_SESSION['id_serie'] == "" or $_SESSION['id_materia'] == "") { header("Location:index.php"); }
else {
if ($_POST[Alterar] == "ok") {
mysql_query("DELETE FROM notas WHERE id_aluno=$_POST[id] AND id_serie=$_SESSION[id_serie] AND id_materia=$_SESSION[id_materia]");
while(list($campo_n1,$valor_n1) = @each($form_n1) and list($campo_n2,$valor_n2) = @each($form_n2) and list($campo_n3,$valor_n3) = @each($form_n3) and list($campo_n4,$valor_n4) = @each($form_n4) and list($campo_n5,$valor_n5) = @each($form_n5) and list($campo_nota,$valor_nota) = @each($form_nota) and list($campo_obs,$valor_obs) = @each($form_obs) and list($campo_periodo,$valor_periodo) = @each($form_periodo) and list($campo_faltas,$valor_faltas) = @each($form_faltas) and list($campo_datas_falta,$valor_datas_falta) = @each($form_datas_falta) and list($campo_carga,$valor_carga) = @each($form_carga) and list($campo_resultado,$valor_resultado) = @each($form_resultado) and list($campo_seg,$valor_seg) = @each($form_seg)) {
if ($valor_seg != NULL) {
mysql_query("INSERT INTO notas VALUES ('$_POST[id]','$_SESSION[id_serie]','$_SESSION[id_materia]','$valor_periodo','$valor_n1','$valor_n2','$valor_n3','$valor_n4','$valor_n5','$valor_nota','$valor_faltas','$valor_datas_falta','$valor_obs','$valor_carga','$valor_resultado','$valor_seg')");
}
Na verdade quando eu fosse alterar esses campos, os outros mantivessem o NULL, ou quando eu apagasse um campo, este também recebesse o NULL ao em vez de vazio