Codeigniter与主机的连接(数据库错误)

时间:2017-04-18 16:46:46

标签: php database codeigniter pdo

当我将文件上传到主机服务器时出现此错误,尤其是当我开始上传模型时。

  

SQLSTATE [HY000] [2002]拒绝连接

     

文件名:controllers / Arena.php

     

行号:13

我使用codeigniter作为php框架和000webhost.com来满足我的免费托管需求。

我的模特的例子

<?php
class Image_model extends CI_Model{

    function get_image_data(){
        $this->load->database();

        $this->db->select('nuotrauka,id,kalba');
        $this->db->where('kalba', 'lt');
        $query = $this->db->get('events');

        return $query->result();
    }
}

我的控制器

<?php
class Arena extends MY_Controller{

    public function display(){

        $this->load->model('Image_model');
        $data['images'] = $this->Image_model->get_image_data();

        $this->load->view('includes/head');
        $this->load->view('includes/header', $data);
        $this->load->view('includes/footer');
    }
}

和我的database.php

    $db['default'] = array(
    'dsn'  => 'mysql:host=files.000webhost.com; dbname=id692581_name; charset=utf8;',
    'hostname' => 'files.000webhost.com',
    'username' => 'id692581_username',
    'password' => 'password',
    'database' => 'id692581_name',
    'dbdriver' => 'pdo',
    'dbprefix' => '',
    'pconnect' => FALSE,
    'db_debug' => (ENVIRONMENT !== 'production'),
    'cache_on' => FALSE,
    'cachedir' => '',
    'char_set' => 'utf8',
    'dbcollat' => 'utf8_general_ci',
    'swap_pre' => '',
    'encrypt' => FALSE,
    'compress' => FALSE,
    'stricton' => FALSE,
    'failover' => array(),
    'save_queries' => TRUE
);

我第二天坐在这个错误上,这让我发疯了

1 个答案:

答案 0 :(得分:1)

我在更改'hostname' => 'files.000webhost.com',之前使用了000webhost 到phpmyadmin中的ip 我的意思是去phpMyAdmin并在页面中复制ip粘贴它: 'hostname' => '164.50.60.70',

或者这样做 您已进入我们的会员区,进入控制面板并单击“MySQL”图标。您的MySQL主机名将在那里列出。

重要!绝不要在这里使用'localhost'作为您的MySQL主机名,否则您将获得拒绝访问权限错误!