2014-03-12 102 views
0

我有一个非常简单的php scriptmysqlMySQL插入多次

我使用XAMPP 3.2.1版本我也试过在WAMP服务器相同的效果在每次刷新插入3点或更多的行或每当我试图运行我的脚本...

问题PHP脚本插入3行以上每刷新,这是我的代码

$dbhost = 'localhost'; 
$dbuser = 'username'; 
$dbpass = 'password'; 
$conn = mysql_connect($dbhost, $dbuser, $dbpass); 
if(! $conn) 
{ 
    die('Could not connect: ' . mysql_error()); 
} 
$sql = 'INSERT INTO users (email, username, password) VALUES ("[email protected]", "user", "password")'; 

mysql_select_db('chie'); 
$retval = mysql_query($sql, $conn); 
if(! $retval) 
{ 
    die('Could not enter data: ' . mysql_error()); 
} 
echo "Entered data successfully\n"; 
mysql_close($conn); 

这是我的表:

create table users(
    users_id int(22) auto_increment not null unique, 
    email varchar(64) not null, 
    username varchar(64) not null, 
    password varchar(255) not null, 
    primary key(users_id) 
    ); 
+0

尝试之前把'mysql_select_db'重定向页面你的'sql查询'... –

+2

这是你在该页面中唯一的代码片段吗? –

+0

在提交之前验证表单。并提交后清除值 –

回答

0

它可能是任何东西,但你能告诉我你的PHP代码是如何被调用的吗?

无论如何,请检查您的网页未被包含在某处几次,或者您不在循环中。

+0

我通过url调用我的脚本:localhost/index.php ...我建立我自己的PHP框架,当我注意到,每次我打电话给我的脚本插入3行或更多...所以我创建了一个非常简单的PHP脚本就像我的问题,并把它放在index.php单独... – user3409420

1

请参阅该代码

$sql = 'INSERT INTO users (email, username, password) VALUES ("[email protected]", "user", "password")'; 

mysql_select_db('chie'); 
$retval = mysql_query($sql, $conn); 
die('Could not enter data: ' . mysql_error()); 

请删除if(! $retval){},因为这会让你的查询再次运行,所以它会被再次插入,并使用header('location:somepage.php')

+0

谢谢重定向只有hahahaha!插入后我必须重定向! – user3409420