Почему мой разрыв использует и вставку и обновление? - PullRequest
0 голосов
/ 24 мая 2018

Я хочу обновить и вставить, используя оператор if-else, но запрос всегда идет «Вставить» данные.Нет "обновления" в любом случае.Мой код ниже:

<form method="post" action="">
    <label>ID: </label> <input type="text" name="id">
    <label>Subject: </label> <input type="text" name="subject">
    <input type="submit" name="submit">
</form>

<?php 
$conn = new mysqli("localhost", "root", "", "zidm"); 

$id=$_POST['id'];
$subject=$_POST['subject'];


if (isset($_POST['submit'])){
      $sql = "UPDATE exam  SET $subject = '$marks'  WHERE id = '$id'";    
    mysqli_query($conn,$sql);
    echo "Data Updated";
  }
  else {
 $sql="INSERT INTO exam ($subject, x_sess, x_class, x_exam, x_roll) VALUES ('$marks', '$ex_sess', '$class', '$exam', '$roll')";
    mysqli_query($conn,$sql);
    echo "Data Inserted";
  }

  ?>

1 Ответ

0 голосов
/ 24 мая 2018
<form method="post" action="">
    <label>ID: </label> <input type="text" name="id">
    <label>Subject: </label> <input type="text" name="subject">
    <input type="submit" name="submit">
</form>

<?php 
    $conn = new mysqli("localhost", "root", "", "zidm"); 

    $id=$_POST['id'];
    $subject=$_POST['subject'];


    if (isset($_POST['submit'])){

     $sql = "select id from exam WHERE id = $id";    
     $result = mysqli_query($conn,$sql);
      if($result)
      {
         $sql = "UPDATE exam  SET $subject = $marks WHERE id = $id";    
         mysqli_query($conn,$sql);
         echo "Data Updated";
      }
      else
      {
         $sql="INSERT INTO exam ($subject, x_sess, x_class, x_exam, x_roll) VALUES ($marks, $ex_sess, $class, $exam, $roll)";
         mysqli_query($conn,$sql);
         echo "Data Inserted";
      }
   }
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...