无法使用php将数据插入mysql

时间:2013-05-31 05:51:07

标签: php html mysql

我知道这是一个初学者的问题。我正在使用html,php和mysql进行血库数据库项目。在这里作为管理员,我正在尝试向用户发送消息。首先,我试图查看用户名是否存在于数据库中。如果他在场,我将用户名和消息插入名为usermessages的表中但是我无法插入data.i我收到消息“消息发送成功”,但实际上它没有在数据库中更新。所以这是我的代码,我可以保证所有数据库中没有拼写错误或者在phpcode中。

<?php
session_start();
$host="localhost"; // Host name 
$username="root"; // Mysql username 
$password=""; // Mysql password 
$db_name="bloodbank"; // Database name 
$tbl_name="users"; // Table name 
$tblname="usermessages"; 
// Connect to server and select databse.
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");

// username and messages is sent from form 
$username=$_POST['username']; 
$sql="SELECT * FROM $tbl_name WHERE username='$username'";
$result=mysql_query($sql);

// Mysql_num_row is counting table row
$count=mysql_num_rows($result);

if($count==1)
{
$mysql="INSERT INTO tblname(username, messages)
VALUES
('$_POST[username]','$_POST[messages]')";
echo "Message Sent Successfully";
}
else
{
echo "No user with that username found in the database";
}

?>

2 个答案:

答案 0 :(得分:2)

尝试执行查询

$mysql="INSERT INTO $tblname(username, messages)
VALUES ('$_POST[username]','$_POST[messages]')";
$return = mysql_query($my_sql);
echo "Message Sent Successfully";

您刚忘记执行此插入查询

我的建议是不要使用mysql_ *函数,因为它们被删除,使用mysqli_ *函数或PDO语句,当你正在使用post变量时尝试逃避它们

mysql_real_escape_string($_POST['messages']);

答案 1 :(得分:0)

您的查询很好,但您还没有执行。使用mysql_query执行查询。

第二,请注意sql injection。你的代码大喊大叫来攻击我。