我的网站上有这个脚本:
<?php
$db_handle = mysql_connect($server, $user_name, $password);
$db_found = mysql_select_db($database, $db_handle);
if($db_found) {
$SQL = "INSERT INTO users (user, address)
VALUES('".$_GET['username']."','".$_GET['password']."')";
$result = mysql_query($SQL);
mysql_close($db_handle);
print "Records added to the database";
}
else {
print "Database NOT found";
mysql_close($db_handle);
}
?>
然后我在浏览器中打开此网址:
http://ringkapps.altervista.org/addToDatabase.php?user=ringk&address=test
但不是插入&#34; ringk&#34;和&#34;测试&#34;在表中,它插入:
无法理解为什么,非常感谢任何帮助。
答案 0 :(得分:1)
这段代码错了!
$SQL = "INSERT INTO users (user, address)
VALUES('".$_GET['username']."','".$_GET['password']."')";
替换它。
$SQL = "INSERT INTO users (user, address)
VALUES('".$_GET['user']."','".$_GET['address']."')";
答案 1 :(得分:0)
因为你正在打电话
而无法正常工作http://ringkapps.altervista.org/addToDatabase.php?user=ringk&address=test
创建$_GET["user"]
和$_GET["address"]
,但您尝试放入不存在的数据库$_GET['username']
和$_GET['password']
。
你应该致电:
http://ringkapps.altervista.org/addToDatabase.php?username=ringk&password=test
另外,请阅读security for PHP apps上的内容,您的代码容易出现很多漏洞!
答案 2 :(得分:0)
在网址中:http://ringkapps.altervista.org/addToDatabase.php?user=ringk&address=test
我们可以看到user = ringk
和address = test
。
用户是关键并且使用它的价值。
地址是关键,并测试它的价值。
您可以使用$_GET
打印所有var_dump($_GET)
值,并自行查看其中的内容。
我的猜测是你想要的是访问
$_GET['user']
和$_GET['address']
然后只需更换一行:
VALUES('".$_GET['username']."','".$_GET['password']."')";
带
VALUES('".$_GET['user']."','".$_GET['address']."')";
或者您可以更新网址以匹配代码。