上传图片后的PHP显示错误"不推荐使用mysql扩展"

时间:2015-07-21 14:39:10

标签: php mysql mysqli

我已成功在MYSQL中上传了一张图片,但是上传图片后我收到以下错误。

  

不推荐使用:mysql_connect():不推荐使用mysql扩展,将来会删除它:在第6行的x:\ xxx \ xxxx \ xxxx \ upload.php中使用mysqli或PDO   完成

if(count($_FILES) > 0) {
if(is_uploaded_file($_FILES['userImage']['tmp_name'])) {
    mysql_connect("localhost", "root", "root");
    mysql_select_db ("test");
    $imgData =addslashes(file_get_contents($_FILES['userImage']['tmp_name']));
    $imageProperties = getimageSize($_FILES['userImage']['tmp_name']);

    $sql = "INSERT INTO output_images(imageType ,imageData)
    VALUES('{$imageProperties['mime']}', '{$imgData}')";
    $current_id = mysql_query($sql) or die("<b>Error:</b> Problem on Image Insert<br/>" . mysql_error());
    if(isset($current_id)) {
        echo "done";
    }
}
}

1 个答案:

答案 0 :(得分:0)

这是因为您使用的是不支持mysql_ *函数的PHP版本,而是需要使用mysqli_ *函数。 (http://php.net/manual/en/mysqli.summary.php

您的代码如下所示:

if(count($_FILES) > 0) {
if(is_uploaded_file($_FILES['userImage']['tmp_name'])) {
    mysqli_connect("localhost", "root", "root");
    mysqli_select_db ("test");
    $imgData =addslashes(file_get_contents($_FILES['userImage']['tmp_name']));
    $imageProperties = getimageSize($_FILES['userImage']['tmp_name']);

    $sql = "INSERT INTO output_images(imageType ,imageData)
    VALUES('{$imageProperties['mime']}', '{$imgData}')";
    $current_id = mysqli_query($sql) or die("<b>Error:</b> Problem on Image Insert<br/>" . mysqli_error());
    if(isset($current_id)) {
        echo "done";
    }
}
}

我的个人建议是使用PDO(http://php.net/manual/en/book.pdo.php