sql >> Database teknologi >  >> RDS >> Mysql

Sådan opdaterer du 3 tabelkolonner, mens kun én kolonne er synlig på siden

Opdater ikke kolonner, der ikke er målrettet til opdatering. For eksempel, hvis den traditionelle besked blev valgt, så ville du kun opdatere denne kolonne. Jeg ville nok bruge separate forespørgsler her.

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());
    }
}

Bemærk, at jeg tror, ​​du bruger en meget gammel og forældet PHP API til MySQL. Til at begynde med ville det gavne dig meget ved at bruge forberedte udsagn.




  1. Postgres-databasen, der kører i docker, bliver ved med at hænge

  2. Hvad er forskellen mellem AS og IS i en Oracle-lagret procedure?

  3. Hvordan poster man et billede fra iPhone-appen (i Swift) til MySQL-databasen?

  4. Hvordan justerer man skærmindstillinger for mysql-kommandolinjen?