Mysql
 sql >> Datenbank >  >> RDS >> Mysql

So aktualisieren Sie 3 Tabellenspalten, während nur eine Spalte für die Seite sichtbar ist

Aktualisieren Sie keine Spalten, die nicht aktualisiert werden sollen. Wenn beispielsweise die herkömmliche Nachricht ausgewählt wurde, würden Sie nur diese Spalte aktualisieren. Ich würde hier wahrscheinlich separate Abfragen verwenden.

foreach ($_POST['patientid'] as $index => $patientid) {
    $id = mysql_real_escape_string($_POST['id'][$index]);
    $data1 = mysql_real_escape_string($patientid);
    $data2 = mysql_real_escape_string($_POST['traditionalmessage'][$index]);
    $data3 = mysql_real_escape_string($_POST['simplifiedmessage'][$index]);
    $data4 = mysql_real_escape_string($_POST['engmessage'][$index]);

    if ($data2 != null && $data2 != '') {
        mysql_query("UPDATE table SET patientid ='$data1',
          traditionalmessage='$data2' WHERE id=$id")   or die(mysql_error());
    }
    else if ($data3 != null && $data3 != '') {
        mysql_query("UPDATE table SET patientid ='$data1',
          simplifiedmessage='$data3' WHERE id=$id")   or die(mysql_error());
    }
    else if ($data4 != null && $data4 != '') {
        mysql_query("UPDATE table SET patientid ='$data1',
          engmessage='$data4' WHERE id=$id")   or die(mysql_error());
    }
}

Beachten Sie, dass Sie meiner Meinung nach eine sehr alte und veraltete PHP-API für MySQL verwenden. Für den Anfang würde es Ihnen sehr helfen, vorbereitete Anweisungen zu verwenden.