<?php
header('Content-Type: text/html; charset=utf8');
$dbhost = '192.168.1.23';
$dbuser = 'demouser01';
$dbpass = 'demo*PW';
$dbname = 'testdb1';
$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die('Error with MySQL connection');
mysql_select_db($dbname);
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER_SET_CLIENT='utf8'");
mysql_query("SET CHARACTER_SET_RESULTS='utf8'");
if(isset($_POST['start'])) {
$chi = 'chiiiii';
$id = 1;
for ($i = 1; $i <= 99999999999; $i++) {
$eng = substr(str_shuffle(str_repeat("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ", 5)), 0, 1024);
$math = substr(str_shuffle(str_repeat("1234567890", 6)), 0, 16);
$sql = "INSERT INTO test_tb (id,chi,eng,num) VALUES (".$id.",'".$chi."','".$eng."',".$math.")";
$result = mysql_query($sql) or die('MySQL query error');
$id++;
}
$id = 0;
sleep(60);
mysql_close($conn);
} else if(isset($_POST['stop'])) {
mysql_close($conn);
}
?>
<form action="<?=$_SERVER['PHP_SELF'];?>" method="post">
<input type="submit" name="start" value="Start Insert">
<input type="submit" name="stop" value="Stop Insert">
</form>
網站上有兩個按鈕,插入可反覆插入記錄,並停止暫停插入。但是,我嘗試使用MySQL關閉連接,它將停止在PHP中運行,但活動仍然存在。插入仍然繼續執行。如何解決這個問題?謝謝。MYSQL關閉連接無法暫停插入活動
[**請不要在新代碼中使用'mysql_ *'函數**](http://bit.ly/phpmsql)。他們不再被維護[並被正式棄用](https://wiki.php.net/rfc/mysql_deprecation)。看到[**紅框**](http://j.mp/Te9zIL)?學習[*準備的語句*](http://j.mp/T9hLWi),並使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/ mysqli) - [這篇文章](http://j.mp/QEx8IB)將幫助你決定哪個。如果你選擇PDO,[這裏是一個很好的教程](http://j.mp/PoWehJ)。 – h2ooooooo 2013-02-15 10:39:17
..說,你爲什麼試圖插入'99,999,999,999'記錄到數據庫中?你的主要問題是,在stop命令中引用的'conn'與在另一個命令中啓動的$ conn'不同,因爲它們是兩個不同的請求。你**可以**將句柄('$ conn')保存在一個'$ _SESSION'變量中,然後引用它。 – h2ooooooo 2013-02-15 10:40:17
PDO對我的情況有任何功能?感謝您的幫助 – user782104 2013-02-15 10:41:03