Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 需要帮助将脚本集成到网站中吗_Php_Mysql - Fatal编程技术网

Php 需要帮助将脚本集成到网站中吗

Php 需要帮助将脚本集成到网站中吗,php,mysql,Php,Mysql,我最近购买了一个php脚本在我的网站上使用,但是,没有对它的支持,我尝试安装,我收到了错误消息: mysql_connect():mysql扩展已弃用,将来将被删除:请在第16行的/home2/pulseman/public_html/install.php中使用mysqli或PDO 以下是我必须发布的一些脚本: <?php if (!defined("_WASD_")) exit; $app = array('namespace'=>'phpmanga',

我最近购买了一个php脚本在我的网站上使用,但是,没有对它的支持,我尝试安装,我收到了错误消息:

mysql_connect():mysql扩展已弃用,将来将被删除:请在第16行的/home2/pulseman/public_html/install.php中使用mysqli或PDO

以下是我必须发布的一些脚本:

<?php

if (!defined("_WASD_")) exit;

$app = array('namespace'=>'phpmanga',
             'name'=>'PHP Manga');

if(C('app.installed') == '1'){
    $messageType = 'info';
    $message = 'Please delete "install.php" file in your root directory before launching your site';
}

if(isset($_POST['install']) && $_POST['install'] == '1'){


        $connect = mysql_connect($_POST['data']['DB_HOST'], $_POST['data']['DB_USER'], $_POST['data']['DB_PASSWORD']);
        if(!$connect){
            $messageType = 'danger';
            $message = 'Could not connect to the database you inputted in, please double check database detail and try again.';         
        }else{
            $db_selected = mysql_select_db($_POST['data']['DB_NAME'], $connect);
            if(!$db_selected){
                $messageType = 'danger';
                $message = 'Could not select the database "'.$_POST['data']['DB_NAME'].'"<br />That could be due to spelling errors in database name or that database doesn\'t exist please double check database detail and try again.'; 
试试这个--

更改:

mysql_connect($_POST['data']['DB_HOST'], $_POST['data']['DB_USER'], $_POST['data']['DB_PASSWORD']);  
致:

和变化:

mysql_select_db($_POST['data']['DB_NAME'], $connect);
致:


我还没有测试过这个,所以如果它仍然给你错误,请告诉我。我还建议使用PDO而不是mysqli,但这需要比使用mysqli做更多的更改。

有几种可能的解决方案,所有这些都是痛苦的:

  • 你可以接受你被搞砸的事实,承认你的预算损失。这样一来,您就损失了金钱,但至少您节省了一些时间,可以用来编写自己的srcipt

  • 你可以去任何你买了这段不推荐使用的代码的地方,要求他们偿还你的钱。有了这个解决方案,你可能会拿回你的钱,但你会浪费时间。你必须自己写剧本

  • 您可以忽略这些警告,并接受您的代码是不安全的,当PHP不再支持这些函数时,这些代码将是无效的PHP代码

  • 您可以通过使用mysqli函数来小心地修复所有这些问题,但是没有人保证脚本中没有其他问题。在脚本中查找新问题可能会浪费很多时间


  • 因此,您要么修复脚本,要么编写自己的脚本,要么接受脚本的短命令。如果我是你,我会写我自己的脚本,向给你这个脚本的人抱怨,如果他们不想合作,那么每当你看到有人想从他们那里买东西时,告诉他们你的经历。

    脚本应该做什么?你这么做的原因很多:
    mysql.*
    函数已经过时,而且不安全。使用或代替。不幸的是,您为过时的软件付费。如果要修复此问题,必须重写所有数据库交互。更简单(但不是很好)的解决方案就是关闭错误报告以抑制警告。我会抱怨你从哪里买的这个。正如@EdCottrell评论的那样,这个脚本已经过时,你不应该使用它,因为mysql必须被认为是不安全的。它是一个更大的脚本的一部分,允许我在这里管理和上传内容,是一个链接,我怀疑可能会有数百个其他调用不推荐的mysql函数-修复它们很可能是一个艰难的过程。如果op只是买了一个全新的系统,而不是试图修复这个旧系统,那就更好了。谢谢大家的帮助,我想我在这个问题上不知所措了。
    mysql_select_db($_POST['data']['DB_NAME'], $connect);
    
    mysqli_select_db($connect, $_POST['data']['DB_NAME']);