когда я обновляю свою базу данных, она не обновляется, и данные превращаются в 1 .. буквально 1 - PullRequest
0 голосов
/ 12 марта 2019

Итак, я хочу обновить свои данные в базе данных, и я хочу убедиться, что строка, которую она обновляет (которая является фамилией), совпадает с той, которая вошла в систему. Я сделал это:

«data» - это имя таблицы, в которой должна быть найдена зарегистрированная фамилия, «ict» - это таблица, в которой находятся оценки и другая фамилия, чтобы я мог сравнить их, если они совпадают, и обновить их.строка.

После того, как я ввожу данные и подтверждаю их, появляется сообщение «Успешно вставлено», но данные не обновляются, и они превращаются в 1.

Это мой код:

<?php
include("sq.php");

$a21st =  isset(($_POST['a21st']));
$a21st2 =  isset(($_POST['a21st2']));
$entre =  isset(($_POST['entre']));
$entre2 =  isset(($_POST['entre2']));
$pe3 =  isset(($_POST['pe3']));
$pe32 =  isset(($_POST['pe32']));
$a1 = isset(($_POST['a1']));
$a12 = isset(($_POST['a12']));
$a2 = isset(($_POST['a2']));
$a22 = isset(($_POST['a22']));
$fil = isset(($_POST['fil']));
$fil2 = isset(($_POST['fil2']));
$mil = isset(($_POST['mil']));
$mil2 = isset(($_POST['mil2']));
$contem = isset(($_POST['contem']));
$contem2 = isset(($_POST['contem2']));
$physci = isset(($_POST['physci']));
$physci2 = isset(($_POST['physci2']));
$pe4 = isset(($_POST['pe4']));
$pe42 = isset(($_POST['pe42']));
$reaspro = isset(($_POST['reaspro']));
$reaspro2 = isset(($_POST['reaspro2']));
$a3 = isset(($_POST['a3']));
$a32 = isset(($_POST['a32']));
$a4 = isset(($_POST['a4']));
$a42 = isset(($_POST['a42']));
$immers = isset(($_POST['immers']));
$immers2 = isset(($_POST['immers2']));


if (mysqli_connect_error()) {
         die('Connect Error('. mysqli_connect_errno().')'. mysqli_connect_error());
     } else {

$SELECT =("SELECT * FROM data");
      $result = mysqli_query($db,$SELECT);
  $row = mysqli_fetch_array($result,MYSQLI_ASSOC);

    $last =  $row['last'];

$UPDATE = "UPDATE `ict` SET a21st = $a21st, a21st2 = $a21st2, entre= $entre, entre2 = $entre2, pe3 = $pe3, pe32 = $pe32, a1 = $a1, a12 = $a12, a2 = $a2, a22 = $a22, fil = $fil, fil2 = $fil2, mil = $mil, mil2 = $mil2, contem = $contem, contem2 = $contem2, physci = $physci, physci2 = $physci2, pe4 = $pe4, pe42 = $pe42, reaspro = $reaspro, reaspro2 = $reaspro2, a3 = $a3, a32 = $a32, a4 = $a4, a42 = $a42, immers = $immers, immers2 = $immers2 WHERE last = '".$last."'";


        if (mysqli_query($db,$UPDATE)){

    $message = "Successfully Inputted!!";
    echo "<script type='text/javascript'>alert('$message');</script>";
        }else {
            echo "Error: <br>". $db->error;
            }
     }
$db->close();$db

1 Ответ

3 голосов
/ 12 марта 2019

isset возвращает true, если значение существует, что переводит в 1 в числовом контексте, что, вероятно, не то, что вы имели в виду. Вместо этого вам нужно получить само значение. E.g.:

$a21st =  isset($_POST['a21st']) ? $_POST['a21st'] : null;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...