使用PHP在MySql数据库中插入数据时遇到问题

wil*_*ara 0 php mysql database

这只是一个测试页面,以确保我知道如何将数据插入数据库.

这是我的登录页面:

<?php 

$mysql_host = "[HOST REMOVED]";
$mysql_database = "a8700070_test";
$mysql_user = "a8700070_admin";
$mysql_password = "[PASSWORD REMOVED]";
?>
Run Code Online (Sandbox Code Playgroud)

这是我对表单的代码.

<form action="db.php" method="post">

<input name="name" type="text">
<input name="age" type="text">
<input name="title" type="text">
<input name="person" type="text">
<input name="ok" type="text">
<input name="GO!" type="submit"> 



</form>
Run Code Online (Sandbox Code Playgroud)

这是我将代码插入表中的代码.

<?php // 
require_once 'login.php';
$db_server= mysql_connect($mysql_host, $mysql_user, $mysql_password);

if (!$db_server) die("Unable to connect to MySQL: " . mysql_error());

mysql_select_db($mysql_database)  or die("Unable to select database: " . mysql_error());

$namer = $_POST["name"];
$age = $_POST["age"];
$tit = $_POST["title"];
$k = $_POST["ok"];
$pers = $_POST["person"];

echo "$namer";

$sql="INSERT INTO test (title,person,age,date,ok)
VALUES($namer,$age,$tit,$k,$pers)"



?>
Run Code Online (Sandbox Code Playgroud)

Jan*_*aek 5

你需要用mysql_query实际调用你的查询,如下所示:

mysql_query($sql);
Run Code Online (Sandbox Code Playgroud)

您还应该记住逃避输入以确保用户不会滥用SQL注入.

您的查询应如下所示:

$sql = "INSERT INTO test (title,person,age,date,ok) VALUES('".mysql_real_escape_string($namer)."','".mysql_real_escape_string($age)."','".mysql_real_escape_string($tit)."','".mysql_real_escape_string($k)."','".mysql_real_escape_string($pers)."')";
Run Code Online (Sandbox Code Playgroud)

如果您收到错误,可以使用mysql_error打印实际错误,如下所示:

mysql_query($sql) or die(mysql_error());
Run Code Online (Sandbox Code Playgroud)