PHP插入表数据代码不插入数据到MSSQL表

问题描述:

我想运行一个PHP页面,应该插入一个用户名和密码到我的MSSQL表“用户”。当我运行该页面出现的唯一的事情是错误的:PHP插入表数据代码不插入数据到MSSQL表

Warning: mssql_query() [function.mssql-query]: message: 'md5' is not a recognized built-in function name. (severity 15) in D:\Hostins0\html\insertadminaccount.php on line 10 

Warning: mssql_query() [function.mssql-query]: Query failed in D:\Hostinstml\insertadminaccount.php on line 10 
'md5' is not a recognized built-in function name. 

这是我的完整的PHP页面代码:

<?php 
$conn=mssql_connect('sm','Gaer','Ra1!'); 
mssql_select_db('Gser',$conn); 
if(! $conn) 
{ 
    die('Could not connect: ' . mssql_get_last_message()); 
} 
    $sqla = "INSERT INTO users (username, password) 
VALUES ('rob_dewar01', " . md5 ('KingDozer') . ")"; 
mssql_query($sqla, $conn) or die(mssql_get_last_message()); 

if (!mssql_query) { 
    // The query has failed, print a nice error message 
    // using mssql_get_last_message() 
    die('MSSQL error: ' . mssql_get_last_message()); 
} 

mssql_close($conn); 
?> 

感谢您的任何帮助。所有的帮助表示赞赏。

+1

错误消息(''md5'不是一个可识别的内置函数名称')完全告诉你*究竟是什么问题。你真的在这里问什么? –

+1

你甚至尝试阅读错误信息吗?这与PHP没有任何关系。您生成无效的sql,例如在MSSQL中有** NO ** md5()函数。 –

+0

阅读不好!改为SO问题! –

MSSQL没有直接md5函数(您可以将其转换为演示here)。您需要通过PHP像这样使用它:

$sqla = "INSERT INTO users (username, password) 
VALUES ('rob_dewar01', '" . md5('KingDozer') . "')"; 

此外,md5 is not secure.考虑使用准备好的语句。

请参阅Secure hash and salt for PHP passwords问题以获取有关在PHP中对密码进行哈希处理的更多信息。

+0

对于链接该md5是不是要走的路。 – Zane

+0

我试过了,现在我得到错误'Warning:mssql_query()[function.mssql-query]:message:'b1a1953c219343f3313f0feae9abbe8'附近的语法错误。 (严重性15)在第10行D:\ Hostinga0 \ html \ insertadminaccount.php 警告:mssql_query()[function.mssql-query]:查询在第10行D:\ Hosting \ ahtml \ insertadminaccount.php中失败 “b1a1953c219343f3313f0feae9abbe8”附近的语法错误。“ – Kelsey

+1

在'周围添加引号。 md5('KingDozer')' –