<?php class ODBCSocketServer { var $sHostName; var $nPort; var $sConnectionString; function ExecSQL($sSQL) { if (!$fToOpen) { $sReturn = '<?xml version=\"1.0\"?>rn<result state=\"failure\">rn<error>$errstr</error>rn</result>rn'; } else { $sSQL = HTMLSpecialChars($sSQL); $sSend = '<?xml version=\"1.0\"?>rn<request>rn<connectionstring>$this->sConnectionString</connectionstring>rn<sql>$sSQL</sql>rn</request>rn'; fputs($fToOpen, $sSend); while (!feof($fToOpen)) { $sReturn = $sReturn . fgets($fToOpen, 128); } fclose($fToOpen); } return $sReturn; } } $oTest = new ODBCSocketServer; $oTest->sHostName = \"*.*.*.*\"; $oTest->nPort = 9628; $oTest->sConnectionString = \"DSN=sql;UID=sa;PWD=;\"; $sResult = $oTest->ExecSQL(\"SELECT * FROM tabela\"); $wynik = array_values($sResult); print $wynik; function startElement($parser, $name, $attribs) { if (strtolower($name) == \"row\") { print \"<tr>\"; } if (strtolower($name) == \"column\") { print \"<td>\"; } if (strtolower($name) == \"error\") { print \"<tr><td>\"; } if (strtolower($name) == \"result\") { print \"Table of Results: <br><table border=1>\"; } } function endElement($parser, $name) { if (strtolower($name) == \"row\") { print \"</tr>\"; } if (strtolower($name) == \"column\") { print \"</td>\"; } if (strtolower($name) == \"error\") { print \"</td></tr>\"; } if (strtolower($name) == \"result\") { print \"</table> <br>End Of Results<br>\"; } } function characterData($parser, $data) { print \"$data\"; } $xml_parser = xml_parser_create(); xml_set_element_handler($xml_parser, \"startElement\", \"endElement\"); xml_set_character_data_handler($xml_parser, \"characterData\"); if (!xml_parse($xml_parser, $sResult)) { die(sprintf(\"XML error: %s at line %d\", xml_error_string(xml_get_error_code($xml_parser)), xml_get_current_line_number($xml_parser))); } else { echo(\"Successful XML parse. \"); } print \"Raw data results: <br>\"; xml_parser_free($xml_parser); $sResult = HtmlSpecialChars($sResult); echo(\"<pre>\"); echo($sResult); echo(\"</pre>\"); ?>
Nie jest to mój skrypt, ale wyciągam za jego pomocą dane z bazy, i tu pojawia się problem bo on wyrzuca to jako xml gotowe a ja chciałbym miec czyste dane jak to przerobic?? i mam jeszcze jedno pytanie: mianowicie jak dam zapytanie do tabeli wszystko ładnie i pięknie działa aż do prezentacji wyników, gdzie wywala mi błąd i wyświetla coś takiego: "<column name="woj_Nazwa">dolno", oczywiście dalej powinien być polski znak (jak zwracam rekordy, w których nie ma polskich znaków wszystko jest ok), dlaczego taki błąd wyskakuje i ewentualnie jak się go pozbyć??