2013-03-18 5 views
3

Я пытаюсь закодировать приложение чата ajax, используя php и мой sql. У меня есть файл с именем connect.php, который выглядит следующим образом:Несколько операторов mysql_connect, отменяющих друг друга

mysql_connect("host", "username", "password"); 
mysql_select_db("database name"); 

У меня есть еще один файл с именем core.php, что нужно это же подключение к базе данных для того, чтобы получить сообщения чата из моей базы данных. Core.php выглядит следующим образом:

class Core { 
protected $db, $result; 
private $rows; 

public function __construct() { 
    $this->db = new mysqli('host', 'username', 'password','database name') or die('Connection Failure'); 
} 
} 

Как установить $ this-> дб в той же связи у меня уже есть открытая?

Как сейчас, имя connect.php вызывается в моем файле init.php до Core.php и приводит к тому, что сообщения чата не отображаются в поле. Если я прокомментирую вызов для connect.php, тогда отображаются сообщения чата, но все данные входа в систему не могут быть доступны, и пользователь выйдет из системы. Кто-нибудь может мне с этим помочь? Это сводит меня с ума

EDIT: Это мой файл init.php где core.php и connect.php называются

ob_start(); 
session_start(); 
error_reporting(0); 

$current_file = explode('/',$_SERVER['SCRIPT_NAME']); 
$current_file = end($current_file); 

require 'core/database/connect.php'; 
require 'functions/general.php'; 
require 'functions/users.php'; 
require 'classes/Core.php'; 
+1

Это два разных ави. Не смешивайте их. – itachi

+0

хорошо я понимаю, что mysql и mysqli разные, но учебное видео из phpacademy кодирует его так. есть ли способ изменить файл connect.php для доступа к моей базе данных через mysqli? – user2180841

+0

У вас уже есть соединение в свойстве db. Используйте это. Я не понимаю, зачем вам нужен этот файл соединения. Не имеет смысла. – itachi

ответ

0
public function __construct() { 
     $this->db = new mysqli('$host', '$u', '$p','$db') or die('Connection Failure'); 
} 

этот код не будет работать, убедитесь, что у использовали «$ host "/" $ u ".. etc вместо '$ host' или '$ u'

php parser проанализирует его как строку, а не переменную внутри цитаты.

+0

. Я допустил ошибку при совместном использовании кода ранее. Эти значения не являются переменными. Этот код работает до тех пор, пока я комментирую вызов для connect.php – user2180841

1

Я не уверен на 100%, что вы делаете, так что это лучший ответ на вопрос ... Во-первых, как вы назначаете уже открытое соединение?

//connect.php 
<?php 
    $conn = mysql_connect("$host", "$u", "$p"); 
    mysql_select_db("$db"); 
?> 

<?php 
include 'connect.php'; 

class Core 
{ 
    private $conn; 

    function __construct() 
    { 
     global $conn; 
     $this->conn =& $conn; 
    } 
} 
?> 
+0

Я обновил сообщение с кодом для моего файла init.php, поэтому idk, если это поможет. – user2180841

+0

Я тоже пробовал, но он не работает. теперь пользователи не выходят из системы, когда они переходят на страницу чата, но если они обновляются, они это делают. – user2180841

+0

Это не имеет смысла для меня. Почему пользователи должны быть выведены из системы, чтобы перейти на страницу чата?Я думаю, что ваш вопрос нуждается в немного больше объяснений, возможно, даже нарисуйте диаграмму технологического процесса, чтобы мы могли видеть, как вы хотите, чтобы все работало. Затем покажите нам, какой код у вас есть для каждого раздела. – Christian

Смежные вопросы