Robin Uters Ответов: 0

Как интегрировать XML-конфигурацию в PHP


Дорогой читатель,

Я пытаюсь прочитать XML-файл (сделанный приложением через c#) в PHP.

Что бы я ни попробовал это не сработает

Что я уже пробовал:

Это и есть код;

<?php 

error_reporting(E_ALL);
ini_set('display_errors', 1);

$myXMLData = $_GET["C:\ProgramData\DS\Config.xml"];
$xml=simplexml_load_string($myXMLData);


$connectionInfo = array( "Database"=> $xml->DatabaseConnection[0]->InitialCatalog, "UID"=> $xml->DatabaseConnection[0]->UserID, "PWD"=>$$xml->DatabaseConnection[0]->Password);
$conn = sqlsrv_connect( $xml->DatabaseConnection[0]->DataSource, $connectionInfo);

if( $conn ) {
     echo "Connection established. <br/><br/>
	 
	
	 ";
}else{
     echo "Connection could not be established.<br /><br>";
     die( print_r( sqlsrv_errors(), true));
	 print_r(PDO::getAvailableDrivers());
} 

?>


Это код гиперссылке ;

Обратите внимание: неопределенный индекс: C:\ProgramData\DS\Config.xml в B:\_Websites\testpage.php на линии 68

Обратите внимание: попытка получить свойство не-объекта в B:\_Websites\testpage.php на линии 72

Обратите внимание: попытка получить свойство не-объекта в B:\_Websites\testpage.php на линии 72

Обратите внимание: попытка получить свойство не-объекта в B:\_Websites\testpage.php на линии 72

Обратите внимание: попытка получить свойство не-объекта в B:\_Websites\testpage.php на линии 72

Обратите внимание: неопределенная переменная: in B:\_Websites\testpage.php на линии 72

Обратите внимание: попытка получить свойство не-объекта в B:\_Websites\testpage.php на линии 72

Обратите внимание: попытка получить свойство не-объекта в B:\_Websites\testpage.php на линии 72

Обратите внимание: попытка получить свойство не-объекта в B:\_Websites\testpage.php на линии 73

Обратите внимание: попытка получить свойство не-объекта в B:\_Websites\testpage.php на линии 73
Подключение не может быть установлено.

Массив ( [0] =&ГТ; массив ( [0] =&ГТ; IMSSP [ошибка sqlstate] =&ГТ; IMSSP [1] =&ГТ; -1 [код] =&ГТ; -1 [2] =&ГТ; неверный параметр был передан sqlsrv_connect. [message] => недопустимая опция была передана в sqlsrv_connect. ) )

Anurag Gandhi

Какова структура вашего xml-файла? Пожалуйста, опубликуйте свой xml-файл.
Кажется, что DatabaseConnection-это не массив, но вы пытаетесь прочитать его как массив.

Robin Uters

Привет Анураг,

При этом XML-код

Конфиг:

$xmldata = simplexml_load_file("C:\ProgramData\ARAS\EasyVisitor\Config\Config.xml") or die("Failed to load");
$XML_SQL_DataSource = $xmldata->DatabaseConnection[0]["DataSource"];
$XML_SQL_InitialCatalog = $xmldata->DatabaseConnection[0]["InitialCatalog"];
$XML_SQL_UserID = $xmldata->DatabaseConnection[0]["UserID"];
$XML_SQL_Password = $xmldata->DatabaseConnection[0]["Password"];

XML-код:
Скрыть   скопировать код
<?xml version="1.0" encoding="utf-8"?><Config><DatabaseConnection DataSource="SQLSERVER" InitialCatalog="SQLDATABASE" UserID="SQLUSER" Password="SQLPASSWORD" /></Config>


PHP-код:
Скрыть   скопировать код
<?php error_reporting(E_ALL);ini_set('display_errors', 1);$connectionInfo = array( "Database"=>$XML_SQL_InitialCatalog, "UID"=>$XML_SQL_UserID, "PWD"=>$XML_SQL_Password);$conn = sqlsrv_connect( $XML_SQL_DataSource, $connectionInfo);if( $conn ) {     echo "Connection established. <br/><br/>	 	 SQL Server: 	$XML_SQL_DataSource <br>	 SQL Database: 	$XML_SQL_InitialCatalog <br>	 SQL Username: 	$XML_SQL_UserID <br>	 SQL Password: 	".md5($XML_SQL_Password)." (For Secure password is encrypted.)<br> 	 ";}else{     echo "Connection could not be established.<br /><br>";     die( print_r( sqlsrv_errors(), true));	 print_r(PDO::getAvailableDrivers());}  ?>


Текущий код ошибки:
Подключение не может быть установлено.

Array ( [0] => Array ( [0] => IMSSP [SQLSTATE] => IMSSP [1] => -33 [code] => -33 [2] => был указан недопустимый тип значения для базы данных опций. Ожидался строковый тип. [message] => был указан недопустимый тип значения для базы данных опций. Ожидался строковый тип. ) )

0 Ответов