Класс и PDO -> PHP фатальная ошибка: невозможно получить доступ к пустому свойству - PullRequest
0 голосов
/ 30 января 2019

После перехода из среды Windows в Linux (но всегда в sql server) я нахожу некоторые трудности.

Я пробовал другой метод: exec, execute, query -> same error

Мой класс bd такой:

<?php

class BD {

// ---- Partie Privé : Les propriétés --------
var $connexion, $connectBase, $db;


// ---- Constructeur de la class -------------

function BD() {

    //paramètres de connexion
    if(file_exists("config/config.inc.php"))
        include("config/config.inc.php");
    elseif(file_exists("../config/config.inc.php"))
        include("../config/config.inc.php");
    $db=new PDO("dblib:host=servername;dbname=dbname", 'login', 'pass');
    $this->db = $db;
    $db->debug=true;

//Fin du constructeur
}

И в этом классе у меня есть эта функция:

function exereq($requete) {


    $resultat = $this->$db->Exec($requete) or die("Erreur lors de 
 l'execution de la requ&ecirc;te : <br>".$requete."<br>".$this->db- 
>errorInfo());
    //test de la requete
    if(!$resultat) {
            $this->message("Problème lors de l'execution de la 
 requ&ecirc;te : <br>".$requete."<br>".$this->db->errorInfo());
    }

    return $resultat;
}

В другом файле я называю это так:

require_once("config/config.inc.php");
require_once("includes/bd.class.php");
require_once("includes/functions.php");

global $bd;
$bd = new BD();

if(isset($_GET['ORDER_ID']) && $_GET['ORDER_ID'] != '') {

$select_order       = "SELECT ORDER_NUMBER FROM EP_ORDER WHERE 
EP_ORDER.ORDER_ID = ".$_GET['ORDER_ID'];
$res_select_order   = $bd->exereq($select_order);`

У меня ошибка PHP Неустранимая ошибка: невозможно получить доступ к пустому свойству в файле ftvdev / impmat / includes / bd.class.php в строке 63. Строка, в которой выполняется функция.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...