2017-04-16 53 views
0

我得到一个废弃的错误与下面的代码连接mysql得到废弃的错误

require 'dbconfig.php'; 
function checkuser($fuid,$ffname,$femail){ 
     $check = mysql_query("select * from Users where Fuid='$fuid'"); 
    $check = mysql_num_rows($check); 
    if (empty($check)) { // if new user . Insert a new record  
    $query = "INSERT INTO Users (Fuid,Ffname,Femail) VALUES ('$fuid','$ffname','$femail')"; 
    mysql_query($query);  
    } else { // If Returned user . update the user record  
    $query = "UPDATE Users SET Ffname='$ffname', Femail='$femail' where Fuid='$fuid'"; 
    mysql_query($query); 
    } 
} 

但每次我尝试使用mysqli时候,我得到一个错误

​​3210

我应该怎么办?

+0

修复你的代码?那将是第一步。绝对没有理由认为,从mysql_改为mysqli_应该会给你头错误,除非你在头之前输出错误 - 顺便说一句,在提供的代码中没有任何内容显示任何头信息,因此我们无法看透。直接从mysql_改为mysqli_也无助于真正的问题,这是未准备好的查询。阅读“使用mysqli准备的查询”,做体面的错误处理,和/或在这里发布完整的代码。 – junkfoodjunkie

+0

由于mysql_ *在PHP 5.5中被弃用(请参阅[PHP文档](http://php.net/manual/en/function.mysql-connect.php)),你应该真的**考虑使用[PPS :准备的参数化语句](http://php.net/manual/en/mysqli.quickstart.prepared-statements.php)。这将有助于[阻止SQL注入](http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php)。但是这与'Warning:headers already sent'无关。 – OldPadawan

+0

'mysqli'或'mysql'?如果你使用'mysqli',请包括通知和你的实际代码。这段代码使用'mysql_'。 – chris85

回答

0

警告。此扩展在PHP 5.5.0中已弃用,并且在PHP 7.0.0中删除了 。应该使用MySQLi或PDO_MySQL扩展 。另请参阅MySQL:有关更多信息,请选择API指南和相关常见问题 。替代该功能包括:

mysqli_connect()PDO :: __结构()

http://php.net/manual/en/function.mysql-connect.php

不能更改头信息 - 这个错误没有任何与数据库。

+0

输出错误通知。所以'这个错误与数据库无关.'并不完全正确。 – chris85