После перехода из среды 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ête : <br>".$requete."<br>".$this->db-
>errorInfo());
//test de la requete
if(!$resultat) {
$this->message("Problème lors de l'execution de la
requê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. Строка, в которой выполняется функция.