ERLEDIGT
JA
JA
ANTWORTEN
5
5
ZUGRIFFE
405
405
EMPFEHLEN
-
Schönen guten Tag,
ich habe mal wieder ein Problem.
Ich versuche gerade eine mysql abfrage in eine dynamische xml ein zu binden doch irgendwie bekomme ich folgende Fehlermeldung:
Hier meine dynamische xml:This page contains the following errors:
error on line 1 at column 1: Document is empty
Below is a rendering of the page up to the first error.
Und hier meine werte.php:PHP-Code:<?php
header('Content-Type: text/xml');
include("werte.php");
$meineXML = '<?xml version="1.0" encoding="ISO-8859-1" ?>';
$meineXML .= '<testabc>';
$meineXML .= '<abc>';
$meineXML .= $abc;
$meineXML .= '</abc>';
$meineXML .= '<abc_pic>';
$meineXML .= $abc_pic;
$meineXML .= '</abc_pic>';
$meineXML .= '<test>';
$meineXML .= $test;
$meineXML .= '</test>';
$meineXML .= '<test_url>';
$meineXML .= $test_url;
$meineXML .= '</test_url>';
$meineXML .= '<test_titel>';
$meineXML .= $test_titel;
$meineXML .= '</test_titel>';
$meineXML .= '<test_genre>';
$meineXML .= $test_genre;
$meineXML .= '</test_genre>';
$meineXML .= '<test_start>';
$meineXML .= $test_start;
$meineXML .= '</test_start>';
$meineXML .= '<test_end>';
$meineXML .= $test_end;
$meineXML .= '</test_end>';
$meineXML .= '</testabc>';
echo utf8_encode($meineXML);
?>
Und zum Schluss noch die mysql.class.php:PHP-Code:<?php
include("mysql.class.php");
$sql = new mysql("localhost","root","","testabc");
$i = 0;
$res = $sql->query("SELECT * FROM `gadget` ORDER BY `id` ASC;");
while($row = mysql_fetch_array($res))
{
$i++;
$speicher[$i] = $row[1];
}
$abc = $speicher[1];
$abc_pic = $speicher[2];
$test = $speicher[3];
$test_url = $speicher[4];
$test_titel = $speicher[5];
$test_genre = $speicher[6];
$test_start = $speicher[7];
$test_end = $speicher[8];
$sql->free_result();
$sql->close_connect();
?>
Hat jemand eine Idee warum das es nicht funktioniert?PHP-Code:<?
error_reporting(E_ALL);
/*
@ PHP5 Mysql-klasse
@ Copyright by Web Communication World (www.wccw.in)
@ Diese Klasse darf frei unter diesem Vermerk eingesetzt, verändert und weitergegeben werden
@ Weitere Klassen, sind auf www.wccw.in Kostenlos erhältlich
Verwendete Funktionen:
@ mysql_connect
@ mysql_select_db
@ mysql_error
@ mysql_query
@ mysql_fetch_array
@ mysql_fetch_assoc
@ mysql_fetch_object
@ mysql_fetch_row
@ mysql_num_rows
@ mysql_real_escape_string
@ mysql_free_result
@ mysql_insert_id
@ mysql_close
@ htmlspecialchars
@ trigger_error
*/
class mysql
{
private $host = '';
private $user = '';
private $passwort = '';
private $dbname = '';
private $last_injection = '';
private $conn_id = null;
public function __construct($host, $user, $passwort, $dbname)
{
$this->host = $host;
$this->user = $user;
$this->passwort = $passwort;
$this->dbname = $dbname;
$this->connect_mysql();
return($this->conn_id);
}
private function connect_mysql()
{
$this->conn_id = mysql_connect($this->host,$this->user,$this->passwort);
if($this->conn_id === false)
{
$message = "Verbindung zur Datenbank nicht möglich.<br />\n";
$message .= "Mysql-fehlermeldung: <br />\n";
$message .= mysql_error();
trigger_error($message);
}
else
{
$this->select_db();
}
}
private function select_db()
{
$select = mysql_select_db($this->dbname,$this->conn_id);
if($select === false)
{
$message = "Die angegebene Datenbank \"".$this->dbname."\" existiert nicht.<br />\n";
$message .= "Mysql-fehlermeldung: <br />\n";
$message .= mysql_error();
trigger_error($message);
}
}
public function query($sqlcode)
{
$this->last_injection = mysql_query($sqlcode);
if($this->last_injection === false)
{
$message = "Fehler bei dem Ausführen eines Mysql-codes!<br />\n";
$message .= "Mysql-Code: " . htmlspecialchars($sqlcode, ENT_QUOTES) . "<br />\n";
$message .= "Mysql-fehlermeldung:<br />\n";
$message .= mysql_error();
trigger_error($message);
}
return($this->last_injection);
}
public function array_result($sql = NULL, &$row = '')
{
$inc = '';
if($sql === NULL)
{
$inc = $this->last_injection;
} else {
$inc = $sql;
}
$row = mysql_fetch_array($inc);
return($row);
}
public function row_result($sql = NULL, &$row = '')
{
$inc = '';
if($sql === NULL)
{
$inc = $this->last_injection;
} else {
$inc = $sql;
}
$row = mysql_fetch_row($inc);
return($row);
}
public function object_result($sql = NULL, &$row = '')
{
$inc = '';
if($sql === NULL)
{
$inc = $this->last_injection;
} else {
$inc = $sql;
}
$row = mysql_fetch_object($inc);
return($row);
}
public function assoc_result($sql = NULL, &$row = '')
{
$inc = '';
if($sql === NULL)
{
$inc = $this->last_injection;
} else {
$inc = $sql;
}
$row = mysql_fetch_assoc($inc);
return($row);
}
public function num_result($sql = NULL)
{
$inc = '';
if($sql === NULL)
{
$inc = $this->last_injection;
} else {
$inc = $sql;
}
$num = mysql_num_rows($inc);
return($num);
}
public function sql_string($string)
{
return(mysql_real_escape_string($string));
}
public function free_result($sql = NULL)
{
$inc = '';
if($sql === NULL)
{
$inc = $this->last_injection;
} else {
$inc = $sql;
}
mysql_free_result($inc);
}
public function result($set = 0, $field = 0, $sql = NULL, &$row = '')
{
$inc = '';
if($sql === NULL)
{
$inc = $this->last_injection;
} else {
$inc = $sql;
}
$row = mysql_result($result, $set, $field);
return($row);
}
public function insert_id(&$row = '')
{
$row = mysql_insert_id();
return($row);
}
public function close_connect()
{
mysql_close($this->conn_id);
}
}
?>Geändert von Andre267 (11.11.11 um 15:27 Uhr)
MfG:
Andre267
-
Hi,
ich glaube in XML sind solche HTML-Tags nicht erlaubt oder irre ich mich ?PHP-Code:$speicher[$i] = $row[1]."<br />\n";
Hier könnte Ihre Werbung stehen.
-
Ich habe es mal raus gemacht und so probiert jedoch ist die Fehlermeldung die gleiche. :-/
MfG:
Andre267
-
werte.php
die Zeile:
mal raushauen , auskommentieren was auch immer. Vllt hilft dasPHP-Code:echo $speicher[1];
ich bin sonst ratlos
Übrigens gibst du im XML Header bei encoding "ISO-8859-1" an und encodierst am schluss den String in UTF-8.
kA ob das so gewollt ist
sollte aber nichts mit deinem Fehler zutun haben.
edit:
Wenn das auch nicht Hilft lass mal die Zeileweg und schau dir das mal genau an was der Browser ausgibt , vllt sind da Fehlermeldungen von der MySQL Verbindung drin oder sowas.PHP-Code:header('Content-Type: text/xml');
Geändert von gordonk (11.11.11 um 15:18 Uhr)
Hier könnte Ihre Werbung stehen.
-
Habe ich alles gemacht doch eine Fehlermeldung oder so gibt es irgendwie nicht...
Wenn ich es jetzt wieder rein mache als den header nach dem ich das echo entfernt habe bekomme ich diese Fehlermeldung.
This page contains the following errors:
error on line 1 at column 6: XML declaration allowed only at the start of the document
Below is a rendering of the page up to the first error.MfG:
Andre267
-
Hat niemand eine Idee, wodran es liegen könnte?
Okay hat sich erledigt...
Ich habe das ganze einfach via fwrite in eine andere Datei geschrieben.Geändert von Andre267 (13.11.11 um 15:16 Uhr)
MfG:
Andre267
Ähnliche Themen
-
Dynamische Abfrage auf eine Unterkategorie
Von Florian123 im Forum Javascript & AjaxAntworten: 4Letzter Beitrag: 28.09.09, 14:24 -
Dynamische Abfrage
Von asupp im Forum PHPAntworten: 8Letzter Beitrag: 30.06.09, 09:01 -
Dynamische Eingabefelder im Browser mit MySql Abfrage
Von wstephan im Forum Relationale DatenbanksystemeAntworten: 3Letzter Beitrag: 26.02.05, 16:09 -
Dynamische SQL-Abfrage
Von luke_the_duke im Forum PHPAntworten: 1Letzter Beitrag: 02.01.05, 21:10 -
dynamische abfrage?
Von Brauni im Forum PHPAntworten: 18Letzter Beitrag: 27.08.02, 10:42





Zitieren
Login






[PHP][Snippet] Array zu XML konvertieren