2014-06-24 64 views
-7

請告訴我我的錯誤。我的代碼是什麼proplem?

的錯誤是:

注意:未定義的變量:名稱在C:\ WAMP \ WWW \ 3arabschool \ ADMIN \ section_insert.php上線10

源代碼是在這裏:

<?php 
include("../config/config.php"); 


if(isset($_POST['name'])){ $name = addslashes($_POST['name']); } 
if(isset($_POST['order_sec'])){ $order_sec = addslashes($_POST['order_sec']); } 
if(isset($_POST['sub'])){ $sub = $_POST['sub']; } 


if ($name == ""){ // this is line 10 
echo "<div align='center'>please enter name<ahref='javascript:history.back(1)'>back</a></div>"; 
}else{ 
$query = @mysqli_query ($con,"INSERT INTO article_sec (name,sub,order_sec)VALUES ('$name','$sub','$order_sec')") or die ("error query"); 
echo "<p align='center'>done</p>"; 
echo "<META HTTP-EQUIV='refresh' CONTENT='1' URL='section.php'>"; 
} 
?> 
+0

你讀過的通知文本? '未定義變量:名稱<< - 就是這樣。這是undefined – zerkms

+0

解決方案是什麼。 – user3769561

+0

只是不要嘗試訪問未定義的變量 – zerkms

回答

1

您正在訪問未定義的變量,除非已經定義了$_POST['name']

if ($name == ""){ 

更改爲

if (empty($name)) { 

PHP將檢查如果變量正試圖訪問它,看看它是否使用此功能是空的之前設置。 See this doc for more info

+0

好的..現在他問我輸入名稱,我填寫表格,你可以幫助它。 – user3769561

+0

@ user3769561我不明白你在問什麼,但既然這解決了你的問題,請將我的答案標記爲已接受,併爲你的新問題提出一個新問題(假設你已經做了足夠的盡職調查來研究你的新問題自己) – sjagr

+0

好的....謝謝 – user3769561

0

當您檢查索引的$_POST數組時,可能isset()返回false。因此,$name從未被定義。爲確保它已被定義,請在檢查之前初始化它,可能是$name = '';

0

這意味着您的if聲明失敗,因此$name永遠不會被聲明/定義。爲了解決這個問題,你可以使用:

if(isset($_POST['name'])) 
{ 
    $name = addslashes($_POST['name']); 
} 
else // making sure $name gets declared if the above condition fails 
{ 
    $name = ''; 
}  

或更改

if ($name == "") 

if(! isset($name))