php中的插入不起作用

php中的插入不起作用,php,Php,我有一个php脚本,它将表单中的数据插入数据库。代码总是返回一个错误。可能有什么问题。 注意:表单中字段的名称正确匹配 <?php $db_hostname = 'localhost'; $db_database = 'townmanagement'; $db_username = 'root'; $db_password = ''; // Connect to server. $db_server = mysql_connect($db_hostname, $db_username,

我有一个php脚本,它将表单中的数据插入数据库。代码总是返回一个错误。可能有什么问题。 注意:表单中字段的名称正确匹配

<?php 
$db_hostname = 'localhost';
$db_database = 'townmanagement';
$db_username = 'root';
$db_password = '';

// Connect to server.
$db_server = mysql_connect($db_hostname, $db_username, $db_password)
or die("Unable to connect to MySQL: " . mysql_error());

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

// Get values from form
$fname= mysql_escape_string(trim ($_POST['fname']));
$lastname= mysql_escape_string(trim ($_POST['lname']));
$dpt=mysql_escape_string(trim($_POST['dpt']));
$user= mysql_escape_string(trim ($_POST['username']));
$psswd=mysql_escape_string(trim ($_POST['password']));



// Insert data into mysql
$sql="INSERT INTO staff_reg (fname, lname, dpt, username, password, registration_date)
VALUES ($fname, $lastname, $dpt, $user, SHA1($password), NOW())";
$result = mysql_query($sql); 

if($result){
echo ("sUCCESSFUL");
}
else {
echo "error";;
}

?>

<?php
// close connection
mysql_close();
?>

您的值缺少引号:

$sql="INSERT INTO staff_reg (fname, lname, dpt, username, password, registration_date)
VALUES ('$fname', '$lastname', '$dpt', '$user', SHA1($password), NOW())";
<>为了更好的故障排除,请考虑添加到<代码> MySqLyQuase语句中,以检测查询失败的原因和时间:

$result = mysql_query($sql) or die( mysql_error() ); 

最后,请注意,
mysql.*
函数已被弃用。请考虑更新代码以使用或.< /p> 您忽略了值周围的引号:

$sql="INSERT INTO staff_reg (fname, lname, dpt, username, password, registration_date)
VALUES ('$fname', '$lastname', '$dpt', '$user', SHA1($password), NOW())";
<>为了更好的故障排除,请考虑添加到<代码> MySqLyQuase语句中,以检测查询失败的原因和时间:

$result = mysql_query($sql) or die( mysql_error() ); 

最后,请注意,
mysql.*
函数已被弃用。请考虑更新您的代码,使用或.< /p> < p>您需要在SQL语句

中引用参数。
  $sql="INSERT INTO staff_reg (fname, lname, dpt, username, password, registration_date)
VALUES ('$fname', '$lastname', '$dpt', '$user', SHA1('$password'), NOW())";

如果可能,您应该升级到或。

您需要在SQL语句中引用您的参数

  $sql="INSERT INTO staff_reg (fname, lname, dpt, username, password, registration_date)
VALUES ('$fname', '$lastname', '$dpt', '$user', SHA1('$password'), NOW())";

如果可能的话,您应该升级到或。

试试这个:您应该知道,我不鼓励您使用
mysql\uUcode>,因为它已被弃用,您应该在将来学习并实现PDO:

<?php 
$db_hostname = 'localhost';
$db_database = 'townmanagement';
$db_username = 'root';
$db_password = '';

// Connect to server.
$db_server = mysql_connect($db_hostname, $db_username, $db_password)
or die("Unable to connect to MySQL: " . mysql_error());

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

// Get values from form
$fname= mysql_escape_string(trim ($_POST['fname']));
$lastname= mysql_escape_string(trim ($_POST['lname']));
$dpt=mysql_escape_string(trim($_POST['dpt']));
$user= mysql_escape_string(trim ($_POST['username']));
$psswd=mysql_escape_string(trim ($_POST['password']));

$psswd2 = SHA1($psswd);

// Insert data into mysql
$sql="INSERT INTO staff_reg (fname, lname, dpt, username, password, registration_date)
VALUES ('".$fname."', '".$lastname."', '".$dpt."', '".$user."', '".$psswd2."', "NOW()" )";

if(mysql_query($sql)); {
echo ("sUCCESSFUL");
}else {
echo "error";;
}
mysql_close();
?>

试试这个:你应该知道,我不鼓励你使用
mysql,因为它已经被弃用了,你应该在将来学习并实现PDO:

<?php 
$db_hostname = 'localhost';
$db_database = 'townmanagement';
$db_username = 'root';
$db_password = '';

// Connect to server.
$db_server = mysql_connect($db_hostname, $db_username, $db_password)
or die("Unable to connect to MySQL: " . mysql_error());

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

// Get values from form
$fname= mysql_escape_string(trim ($_POST['fname']));
$lastname= mysql_escape_string(trim ($_POST['lname']));
$dpt=mysql_escape_string(trim($_POST['dpt']));
$user= mysql_escape_string(trim ($_POST['username']));
$psswd=mysql_escape_string(trim ($_POST['password']));

$psswd2 = SHA1($psswd);

// Insert data into mysql
$sql="INSERT INTO staff_reg (fname, lname, dpt, username, password, registration_date)
VALUES ('".$fname."', '".$lastname."', '".$dpt."', '".$user."', '".$psswd2."', "NOW()" )";

if(mysql_query($sql)); {
echo ("sUCCESSFUL");
}else {
echo "error";;
}
mysql_close();
?>

“代码总是返回一个错误。”-嗯……错误是什么?我敢打赌它是一个BSOD,@slugonamission.where-The-error-throwed?……请不要使用
mysql.*
函数,它们已被弃用。顺便说一句:错误消息是什么。-0.49关于2013年使用mysql。试试看。“代码总是返回一个错误。”-嗯……错误是什么?我敢打赌它是一个BSOD,@slugonamission.where-The-error-throwed?……请不要使用
mysql.*
函数,它们已被弃用。顺便说一句:错误消息是什么。-0.49关于2013年使用mysql。请改为尝试。'if($result){echo(“sUCCESSFUL”);}else{echo“error”;}'if($result){echo(“sUCCESSFUL”);}else{echo“error”;}@php不会再次显示任何内容,也不会保存数据。@php不会再次显示任何内容,也不会保存任何内容。@kkStep没有问题。不要忘记接受任何对你有帮助的答案,这样你的问题就可以标记为answered@kkStep没问题。不要忘记接受任何对你有帮助的答案,这样你的问题就可以标记为已回答