使用html表单将数据插入表中

时间:2013-11-25 13:45:09

标签: php mysql

我在主页面上有一个html表单,用于将数据插入到mysql表中。

<form action ="http://127.0.0.1/insertdata.php" name="salesRecords" method="post">
Client name = <input type="text" name="client" value="" /> </br>
Date of sale = <input type="text" name="date" value="" /> (YYYY-MM-DD) </br>
Value of sale = <input type="text" name="amount" value="" /> (DDDD.DD) </br>
<input type="submit" value="Submit" onclick="return validateForm();"/>

我在receiveform.php文件中使用以下代码来显示表数据并且它可以正常工作。

<?php

//create connection
$con = mysql_connect("localhost", "admin", "password")
//query database and write out results
$sql = 'select * from sales';
$result = mysql_query($sql, $con);
echo "<table>";
while($row = mysql_fetch_array($result))
{
    echo "<tr><td>"
    echo $row['client'];
    echo "</td><td>";
    echo $row['date'];
    echo "</td><td>";
    echo $row['amount'];
    echo "</td></tr>";
}
echo "</table>";
?>

我在insertdata.php文件中使用以下代码。但是,它无法正常工作。有人可以帮忙吗?

/Form values
$_POST['client'];
$_POST['date'];
$_POST['amount'];

//insert data into table
$insertData = 'insert into sales (client, date, amount) values
    ('$_POST[client]', '$_POST[date]', '$_POST[amount]')';

$result = mysql_query($insertData, $con);
if($result)
{
    echo 'Data inserted successfully';
}else{
    echo 'Data insertion failed: ' .mysql_error();
}
?>

3 个答案:

答案 0 :(得分:1)

zan,像这样修改您的查询

$insertData = 'insert into sales (client, date, amount) values ("'.$_POST['client'].'", "'.$_POST['date'].'", "'.$_POST['amount'].'")';

答案 1 :(得分:1)

问题在于如何使用$ _POST数组键,它们应该有引号,但这会导致以这种方式输入mysql的问题。 Ram Sharma的回答可行,但建议使用PDO代替数据库。

答案 2 :(得分:-1)

$ con = mysql_connect(“localhost”,“admin”,“password”);

此行后添加

$selected = mysql_select_db("db",$con) ;

由于