Moin,
ich vermute einen Denkfehler.
In der aufzurufenden Datei, bei XTC ist es z.B. die cao_xtc.php, fragt man per switch den Request für
action ab und reagiert auf den Wert
version . Beispiel:
Code: Alles auswählen
switch ($_GET['action']) {
case 'version': // Ausgabe Scriptversion
SendXMLHeader ();
SendScriptVersion ();
exit;
...
Du fragst nach
'read_version', welches es nicht gibt. Es muss nach
'version' gefragt werden. Bei jeglicher Komunikation mit dem Script wird immer erst
action=version gesendet und die Rückgabe der Parameter ausgewertet. Abstellen kann man das nicht, da damit die bestimmte Prüfungen in CAO verbunden sind.
Im übrigen würde ich dringend raten, nicht die alten Sourcen anzupassen, sondern das ganze in Klassen zu packen und wenn möglich Teile des Shop einzubauen und auf die entsprechenden Klassen zurück greifen, z.B. für die Datenbankabfragen. Das macht das Ganze wesentlich einfacher. Beispielauszug aus COI:
Code: Alles auswählen
/**
* XML-Ausgabestring
* @access protected
* @var string $_sXMLout
*/
protected $_sXMLout;
/**
* XML-Header für Ausgabe vorbereiten
* @param string $sXMLHeader - Erstes TAG für die Ausgabe
*/
public function XMLHeader($sXMLheader)
{
if($this->_iUtfMode) $sXMLEncode="<?xml version=\"1.0\" encoding=\"utf-8\"?>"."\n".$sXMLheader."\n";
else $sXMLEncode="<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>"."\n".$sXMLheader."\n";
header("Last-Modified: ". gmdate ("D, d M Y H:i:s"). " GMT");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
header("Content-type: text/xml");
echo $sXMLEncode;
}
/**
* XML-Tags ausgeben
* @access protected
* @param string $sXMLstring - XLM-Tags
*/
protected function _doXMLout($sXMLstring)
{
echo $sXMLstring;
}
/**
* Scriptversion ausgeben
* wird bei jeder Aktion von CAO abgefragt
* param array $action
*/
public function GetScript($action)
{
if($this->xmlversion)
{
$this->XMLHeader('<STATUS>');
$this->_sXMLout=("<STATUS_DATA>\n".
"<ACTION>".$action."</ACTION>\n".
"<CODE>111</CODE>\n".
"<SCRIPT_VER>".Config::$sCOVERSION."</SCRIPT_VER>\n".
"<SCRIPT_DATE>".Config::$sSCRIPTDATE."</SCRIPT_DATE>\n".
"</STATUS_DATA></STATUS>\n\n");
$this->_doXMLout($this->_sXMLout);
}
}