簡體   English   中英

運行腳本時的警告

[英]Warnings while running a script

運行腳本時收到這些警告:

Notice: Undefined variable: varName in C:\wamp\www\dash\index.php on line 38
Notice: Undefined variable: varMsg in C:\wamp\www\dash\index.php on line 38
Notice: Undefined variable: varDate in C:\wamp\www\dash\index.php on line 38

另外,我可以在數據庫中插入詳細信息,但是每次刷新頁面時都會插入查詢。

腳本的重要部分:

<?php
date_default_timezone_set('UTC');

if(isset($_POST['formSumbit']))
{
   $varName = $_POST['formName'];
   $varMsg = $_POST['formMsg'];
   $varDate = date(d/m/y);
   $errorMessage = "";
}
//line 38
 $order ="INSERT INTO dash (name,msg,msg_date) VALUES ('$varName','$varMsg','$varDate')";  
    $result = mysql_query($order); 


?>

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
  name
  <input type="text" name="formName" maxlength="25"  />

  msg
  <input type="text" name="formMsg" maxlength="1500"  />


<input type="submit" name="formSumbit" value="Submit" />
</form>

您的if(isset($_POST['formSumbit'])) {}需要圍繞查詢:

if(isset($_POST['formSumbit']))
{
   $varName = $_POST['formName'];
   $varMsg = $_POST['formMsg'];
   $varDate = date('Y-m-d');
   $errorMessage = "";
   //line 38
   $order ="INSERT INTO dash (name,msg,msg_date) VALUES ('$varName','$varMsg','$varDate')";  
   $result = mysql_query($order); 
}

每次刷新頁面時,查詢都在運行,但是查詢會插入空白值,因為這些值包含在if語句中。 這就是為什么您會收到通知。 您沒有值,因為尚未提交表單。

if(isset($_POST['formSubmit']))語句內添加第38和39行。 當前,頁面加載時每次都會執行,但是您只想在提交表單時執行它:

if(isset($_POST['formSumbit']))
{
   $varName = $_POST['formName'];
   $varMsg = $_POST['formMsg'];
   $varDate = date(d/m/y);
   $errorMessage = "";
   $order ="INSERT INTO dash (name,msg,msg_date) VALUES ('$varName','$varMsg','$varDate')";  
   $result = mysql_query($order);
}

將以下代碼放入單獨的文件中,例如“ insert.php”,然后將操作設置為此,這將解決重復的插入問題。

if(isset($_POST['formSumbit']))
{
   $varName = $_POST['formName'];
   $varMsg = $_POST['formMsg'];
   $varDate = date(d/m/y);
   $errorMessage = "";
   $order ="INSERT INTO dash (name,msg,msg_date) VALUES ('$varName','$varMsg','$varDate')";  
   $result = mysql_query($order);
   if($result){
       header("Location: back-to-form.php");
   } else {
      echo mysql_error();
   }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM