PHP调用未定义函数mysql_connect

Posted

技术标签:

【中文标题】PHP调用未定义函数mysql_connect【英文标题】:PHP call to undefined function mysql_connect 【发布时间】:2016-05-09 08:25:29 【问题描述】:

我收到一个错误“php call to undefined function”我不知道这个错误的原因是什么,有人能给我一个线索如何解决这个问题吗?我是 html 和 css 新手。

这里是错误。

这是我的 sql

这是我的 php 代码。

<?php
//for connecting db
include('connect.php');
if (!isset($_FILES['image']['tmp_name'])) 
echo "";

else

$file=$_FILES['image']['tmp_name'];
$image= addslashes(file_get_contents($_FILES['image']['tmp_name']));
$image_name= addslashes($_FILES['image']['name']);
move_uploaded_file($_FILES["image"]["tmp_name"],"gallery/" . $_FILES["image"]["name"]);
$photo="gallery/" . $_FILES["image"]["name"];

$query = "insert into images (photo)VALUES('$photo')";
$result = mysql_query($query); 

echo '<script type="text/javascript">alert("image successfully uploaded ");window.location=\'index.php\';</script>';

?>
<!DOCTYPE html>
<html>
    <head>
        <link href="css/style.css" rel="stylesheet" />
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script>
        <script src="js/slider.js"></script>
        <script>
        $(document).ready(function () 
        $('.flexslider').flexslider(
        animation: 'fade',
        controlsContainer: '.flexslider'
        );
        );
        </script>
    </head>
    <body>
    <div class="container">
    <form class="form" action="" method="POST" enctype="multipart/form-data">
        <div class="image">
            <p>Upload images and try your self </p>
        <div class="col-sm-4">
              <input class="form-control" id="image" name="image" type="file" onchange='AlertFilesize();'/>
              <input type="submit" value="image"/>
            </div>
        </div>
        </form>
        <div class="flexslider">
            <ul class="slides">
                <?php
                    // Creating query to fetch images from database.
                    $query = "select * from images order by Id desc limit 5";
                    $result = mysql_query($query);
                    while($r = mysql_fetch_array($result)) 
                ?>
                    <li>
                    <img src="<?php echo $r['photo'];?>"  />
                    </li>
                <?php 
                 
                ?>
            </ul>
        </div>
    </div>
    </body>
</html>

这是我的 sql 代码。

<?php
// hostname or ip of server
$servername='localhost';
// username and password to log onto db server
$dbusername='root';
$dbpassword='';
// name of database
$dbname='pegasus';

////////////// Do not  edit below/////////
$link=mysql_connect("$servername","$dbusername","$dbpassword");
if(!$link)
    die("Could not connect to MySQL");
    
mysql_select_db("$dbname",$link) or die ("could not open db".mysql_error());

?>

【问题讨论】:

您可能正在使用 PHP 7。所有 mysql_* 函数在 PHP 7 中都已删除。 你使用的是哪个版本的php? mysql_* 已弃用。请使用mysqli_*POD 我只需将 i 放入“mysql_”即可? @nethken :它对你没有多大帮助。您需要为mysqli_query 传递连接字符串请参考mysqli php Manual 【参考方案1】:

将 MySQL 与 PHP 结合使用的最新和最佳实践是面向对象的解决方案。这是一个例子:

define("HOST", "localhost");
define("USER", "username ");
define("PASS", "password");
define("DATABASE", "pegasus");

$mysqli = new mysqli(HOST, USER, PASS, DATABASE);
$q = "UPDATE products SET amount_sold = 6";
$mysqli->query($q);

以下是有关此编码实践的更多信息:

http://codular.com/php-mysqli

希望这会有所帮助。

【讨论】:

以上是关于PHP调用未定义函数mysql_connect的主要内容,如果未能解决你的问题,请参考以下文章

PHP / Apache:PHP致命错误:调用未定义函数mysql_connect()[重复]

致命错误:调用未定义函数 mysql_connect()

雪豹:致命错误:调用未定义函数 mysql_connect()

致命错误:未捕获的错误:调用 C:\xampp\htdocs\ 中未定义的函数 mysql_connect()

调用未定义的函数 imagecreatefromjpeg() 并启用 GD

XAMPP - 致命错误:调用未定义的函数mysql_connect()