2011-12-22 114 views
1

嗨請幫我對此..我創建了一個表格&試圖發佈數據到MySQL數據庫。但在提交表格後,我收到以下錯誤..提交表格後未定義的索引錯誤

注意:未定義指數:本月在C:\ XAMPP \ htdocs中\上線14 通知自動\ insert_ac.php:未定義指數:listner_name在C:\ XAMPP \ htdocs \ auto \ insert_ac.php on line 15 注意:未定義的索引:在C:\ xampp \ htdocs \ auto \ insert_ac.php中的rj_name在第16行 注意:未定義索引:C:\ xampp \ htdocs \ auto \第17行的insert_ac.php 注意:未定義的索引:年份在第18行的C:\ xampp \ htdocs \ auto \ insert_ac.php中012xx注意:未定義的索引:國家在C:\ xampp \ htdocs \ auto \ insert_ac.php上第19行

&當我檢查插入到我的數據庫中的空白行條目

<?php 

$host="localhost"; // Host name 
$username="root"; // Mysql username` 
$password=""; // Mysql password 
$db_name="auto"; // Database name 
$tbl_name="song_request"; // Table name 

// Connect to server and select database. 
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB"); 

// Get values from form 
$month=mysql_real_escape_string($_POST['month']); 
$listner_name=mysql_real_escape_string($_POST['listner_name']); 
$rj_name=mysql_real_escape_string($_POST['rj_name']); 
$channel=mysql_real_escape_string($_POST['channel']); 
$year=mysql_real_escape_string($_POST['year']); 
$country=mysql_real_escape_string($_POST['country']); 

// Insert data into mysql 

$sql="INSERT INTO song_request (month, listner_name, rj_name, channel, year, country)VALUES('$month', '$listner_name', '$rj_name', '$channel', '$year', '$country')"; 
$result=mysql_query($sql) or die ('error Updating database'); 

// if successfully insert data into database, displays message "Successful". 
if($result){ 
echo "Successful"; 
echo "<BR>"; 
echo "<a href='index.html'>Back to main page</a>"; 
} 

else { 
echo "ERROR"; 
} 

// close connection 
mysql_close(); 
?> 
+1

$ _POST ['month']不存在。檢查您的HTML表單並確保在那裏存在名稱爲「月」的表單元素。 – SeanNieuwoudt 2011-12-22 10:25:32

+0

請將您的html代碼 – 2011-12-22 10:27:13

+0

變量listner_name,rj_name,channel,year和country不存在於$ _POST中,因此有兩種可能的原因:a)表單中沒有這些字段(或者它們拼寫不同HTML和PHP中),b)你正在做一個GET提交(在你指定的方法=「get」的

標記中,或者你根本沒有指定方法),這意味着$ _GET集合是你會發現的地方缺少的領域。 – Yaniro 2011-12-26 09:24:29

回答

1

我不知道你的表格是什麼樣的,但基本上PHP告訴你沒有$_POST['month']。你真正應該做的就是開始調試。看什麼在$_POST什麼是不是。試着找出爲什麼PHP告訴你$_POST['month']不存在。

+0

嗨我的foms看起來像這樣.. – 2011-12-22 10:40:31

+0

看起來像什麼? :) – hoppa 2011-12-22 10:42:54

0

表單上沒有月份字段,這就是爲什麼你會得到該錯誤。

$_POST['month']應在提交表單時指定,嘗試將該字段添加到表單並重試。

此外,您可以檢查它是否設置了isset()empty()函數。