如果不为空,请将值插入数据库,并将值设置为';null';如果为空


Insert value to database if not empty and set the value to 'null' if empty

我是mysql的新手。所以我的问题是,如果主题字段不为空,我想将数据库中的$状态设置为"正在处理"。如果主题为空,则状态将设置为空。这是我的代码,当我运行它时,状态不会发生任何变化。谢谢

<?php
    if(isset($_POST['submit']))
     {
         $dbhost = 'localhost';
         $dbuser = 'root';
         $dbpass = '';
         $conn = mysql_connect($dbhost, $dbuser, $dbpass);
         mysql_select_db('course');
         if(! $conn )
         {
         die('Could not connect: ' . mysql_error());
         }
         $code= $_POST['code'];
         $subject= $_POST['subject'];
         $status= $_POST['status'];
         $sql = "INSERT INTO form(code,subject,status)
         VALUES('$code','$subject','$status')";
         $retval = mysql_query( $sql, $conn );
         if(!empty($_POST['subject'])) {
                $status = 'IN PROCESS';
            }      
            else $status = 'null';
         if(! $retval )
         {
         die('Could not enter data: ' . mysql_error());
         }
         else
         {
             ?>
             <div class="alert alert-success">
               <strong>Success!</strong> .
             </div>
             <?php
         }

         mysql_close($conn);
      }
 ?>

如果条件,请尝试将Insert语句放在之后。因为CCD_ 2的值已经在条件之前插入。

<?php
        if(isset($_POST['submit']))
         {
             $dbhost = 'localhost';
             $dbuser = 'root';
             $dbpass = '';
             $conn = mysql_connect($dbhost, $dbuser, $dbpass);
             mysql_select_db('course');
             if(! $conn )
             {
             die('Could not connect: ' . mysql_error());
             }
             $code= $_POST['code'];
             $subject= $_POST['subject'];
             $status= $_POST['status'];
             if(!empty($_POST['subject'])) {
                    $status = 'IN PROCESS';
                }      
                else $status = 'null'; 
             //put it here
             $sql = "INSERT INTO form(code,subject,status)
             VALUES('$code','$subject','$status')";
             $retval = mysql_query( $sql, $conn );
             if(! $retval )
             {
             die('Could not enter data: ' . mysql_error());
             }
             else
             {
                 ?>
                 <div class="alert alert-success">
                   <strong>Success!</strong> .
                 </div>
                 <?php
             }

             mysql_close($conn);
          }
     ?>

设置

if(!empty($_POST['subject'])) {
    $status = 'IN PROCESS';
}      
else $status = 'null';

在查询之前

$sql = "INSERT INTO form(code,subject,status)
     VALUES('$code','$subject','$status')";