2011-12-18 110 views
1

這是我的按鈕點擊調用的PHP頁面。顯示按鈕點擊創建mysql事件,每5分鐘刪除第一行表?

<?php 
$host="localhost"; // Host name 
$username="root"; // Mysql username 
$password=""; // Mysql password 
$db_name="parth"; // Database name 



$con = mysql_connect("localhost","root","") or die('Could not connect to MySQL server: ' . mysql_error()); 
//echo"Connected to MySQL server"; 
mysql_select_db("parth") or die('Could not connect to database' . mysql_error()); 
//echo "Connected to Database"; 



$sql="CREATE EVENT gold ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 3 SECOND 
DO 
DELETE FROM table LIMIT 1;"; 
mysql_query($sql); 
echo "done"; 
?> 

回聲消息「完成」,但事件查詢沒有得到執行。我也給予了特權。 剛剛使用3秒進行開發。

+0

是什麼'mysql_query'返回? – Mat 2011-12-18 13:30:18

+0

其定義查詢創建事件...如果不執行,可能會出現錯誤 – 2011-12-18 13:33:22

+0

_什麼是mysql_query返回?_請檢查返回碼。如果返回值是** false **請使用'mysql_error'。 – Mat 2011-12-18 13:34:20

回答

1

試試這個:

<?php 
error_reporting(E_All); 
$sHost = "localhost"; 
$sUsername = "root"; 
$sPassword = ""; 
$sDb = "parth"; 

$con = mysql_connect($sHost, $sUsername, $sPassword) or die('Could not connect to MySQL server: ' . mysql_error()); 
echo"Connected to MySQL server"; 

mysql_select_db($sDb) or die('Could not connect to database' . mysql_error()); 
echo "Connected to Database"; 

$sResult = mysql_query("CREATE EVENT gold ON SCHEDULE EVERY 3 MINUTE STARTS CURRENT_TIMESTAMP + INTERVAL 3 SECOND DO DELETE FROM table LIMIT 1;") or die(mysql_error()); 
echo "Done"; 
+0

Thanx micha !!現在它的執行,但事件查詢只執行一次,並且它不會重複執行 – 2011-12-18 14:11:41

+1

@Parth mehta它只會被刪除一次,因爲您使用了'AT' keywork,如果您希望每3分鐘執行一次,請使用'EVERY 3 MINUTE STARTS CURRENT_TIMESTAMP'。檢查手冊:http://dev.mysql.com/doc/refman/5.1/en/create-event.html – piotrekkr 2011-12-18 14:28:27

+0

謝謝piotrekkr! – 2011-12-18 15:03:43