Bagaimana untuk memasukkan nilai tertentu dalam medan input walaupun sebahagian daripadanya kosong?
P粉418854048
P粉418854048 2024-03-20 09:52:58
0
1
406

Bagaimana untuk menukar satu atau lebih nilai pilihan? Jika saya memasukkan nilai ia berfungsi. Namun, jika saya memasukkan dua nilai dalam dua medan input, ia tidak berfungsi, menunjukkan ralat berikut.

Ralat mengemas kini rekod: Terdapat ralat dalam semakan sintaks SQL anda; Manual yang sepadan dengan versi pelayan MariaDB anda Sintaks Baris 1 digunakan berhampiran 'nat = 'saf' WHERE id = '16''

if (isset($_POST['modifica'])) {
    $id = $_POST['id'];

    $semaphore = false;
    $sql = "UPDATE users SET ";
    $fields = array('nume', 'nat', 'email', 'telefon');
    foreach ($fields as $field) {
        if (isset($_POST[$field]) and !empty($_POST[$field])) {
            $var = ($_POST[$field]);
            $sql .= $field." = '$var'";
            $semaphore = true;
        }
    }

    if ($semaphore) {
        $sql .= " WHERE id = '$id'";
        ($sql);
    }
    
    if ($conn->query($sql) === true) {
        echo "Record updated successfully";
    } else {
        echo "Error updating record: ".$conn->error;
    }

    $conn->close();
}

P粉418854048
P粉418854048

membalas semua(1)
P粉798010441

@m-eriksson pelaksanaan ulasan:

$sql = "UPDATE users SET nume = :nume, nat = :nat, email = :email, telefon = :telefon";

$fields = array('nume', 'nat', 'email', 'telefon');

if(count($fields) > 0 ){ 
    $this->update($sql, $fields, $con)
    $semaphore = true;
}

public function update ($sql, $fields, $con)
{
    $update = $con->prepare($query);
    return $update->execute($fields);
}
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan