PHP数据保存到数据库
==>index.php:PHP数据保存到数据库,php,database,save,Php,Database,Save,==>index.php: <form action="anotherpage.php" method="POST"/> <br>Username: <input type="text" name="user_name"><br><br> Password: <input type="password" name="pwd"><br><br> Repeat: <input type="pas
<form action="anotherpage.php" method="POST"/>
<br>Username: <input type="text" name="user_name"><br><br>
Password: <input type="password" name="pwd"><br><br>
Repeat: <input type="password" name="pwd2"><br><br>
<input type="radio" name="sex" value="male">Male<br>
<input type="radio" name="sex" value="female">Female<br><br>
<input type="submit" value="Submit">
</form>
用户名:
密码:
重复:
男性
女性
这是我的index.php,我创建了一个“anotherpage.php”
==>anotherpage.php
<?php
define('DB_NAME', 'test');
define('DB_USER', 'root');
define('DB_PASSWORD', '');
define('DB_HOST', 'localhost');
$link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);
if (!$link) {
die('Could not connect: '. mysql_error());
}
$db_selected = mysql_select_db(DB_NAME, $link);
if (!$db_selected) {
die('Can\'t use '.DB_NAME.': '.mysql_error());
}
echo 'Connected successfully!<br>';
$username = mysql_real_escape_string($_POST['user_name']);
$password = mysql_real_escape_string($_POST['pwd']);
$sexuality = mysql_real_escape_string($_POST['sex']);
$sql = "INSERT INTO users (username, password, sexuality) VALUES ('".$username."','".$password."','".$sexuality."')";
if (!mysql_query($sql)) {
die('Error: '. mysqli_error($con));
}
if(isset($_POST['user_name']) &&! empty($_POST['user_name']) && isset($_POST['pwd2']) &&! empty($_POST['pwd2']) && isset($_POST['pwd']) &&! empty($_POST['pwd']) && isset($_POST['sex']) &&! empty($_POST['sex']) or die('PART\'S ARE NOT FILLED!'))
{
$user_name = $_POST['user_name'];
$user_name_up = strtoupper($user_name);
$pwd = $_POST['pwd'];
$pwd2 = $_POST['pwd2'];
$sex = $_POST['sex'];
$fp = fopen("formdata.txt", "a");
$savestring = $user_name . "," . $pwd.",".$pwd2.",".$sex." - ";
fwrite($fp, $savestring);
fclose($fp);
}
if($pwd == $pwd2 or die('DIFFERENT PASSWORDS!'))
{
echo $user_name_up.' ALL TAKEN!<BR>THANK YOU!!!<br><h1>You data has been saved!</h1>';
}
?>
请注意sql注入,请阅读
sql放错地方了,下面的部分必须放在与保存文件的位置相同的if语句中
$sql = 'INSERT INTO users (username, password, sexuality) VALUES ("$_POST[user_name]","$pwd","$sex")';
if (!mysql_query($sql)) {
die('Error: '. mysqli_error($con));
}
您还更改了引号并添加了字符串concats以使其正常工作
$sql = "INSERT INTO users (username, password, sexuality) VALUES ('".$_POST['user_name']."','".$pwd."','".$sex."')";
if (!mysql_query($sql)) {
die('Error: '. mysqli_error($con));
}
但是请注意上面的代码仍然不安全,下面的代码更安全一些
$username = mysql_real_escape_string($_POST['user_name']);
$password = mysql_real_escape_string($pwd);
$sexuality = mysql_real_escape_string($sex);
$sql = "INSERT INTO users (username, password, sexuality) VALUES ('".$username."','".$password."','".$sexuality."')";
直接将密码保存到数据库中是不明智的,请阅读下面的好吧,打开一个文本文件,将数据写入该文件,并在确定一切正常后将其关闭。php有很多问题,所以我真的不明白你的问题出在哪里?你可能想使用一个数据库,比如。嗯,有fwrite()
和file\u put\u contents()
,你可以用谷歌搜索。你肯定会在谷歌上找到很多东西;-)当你在做的时候,检查flock
功能。谢谢!我找到了如何将它们保存到文件中,现在的问题是我无法保存到数据库…:D编辑的帖子!等待评论。。。