xml validate - xsd

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
rigas1987
Δημοσιεύσεις: 8
Εγγραφή: 05 Ιαν 2010 04:40

xml validate - xsd

Δημοσίευση από rigas1987 » 13 Ιαν 2010 00:23

γεια σας

χρησιμοποιωντας τις εντολες πιο κατω δημιουργω ενα xml αρχειο απο καποια δεδομενα που εχω συλλεξει μεσω μιας φορμας σε html. στη συνεχεια προσπαθω να κανω validate το αρχειο χρησιμοποιωντας ενα xsd file.

Κώδικας: Επιλογή όλων

$title = $_POST['title'];
$composer = $_POST['composer'];
$lyrics = $_POST['lyrics'];
$artist = $_POST['artist'];
$album = $_POST['album'];
$produser = $_POST['produser'];
$publisher = $_POST['publisher'];
$length = $_POST['length'];
$year = $_POST['year'];

$dom = new DOMDocument();
$dom->load("123.xml");

$write_string = "<SONGS> \n";
$write_string .= "<SONG> \n";
$write_string .= "<TITLE>".$title."</TITLE> \n";
$write_string .= "<COMPOSER>".$composer."</COMPOSER> \n";
$write_string .= "<LYRICS>".$lyrics."</LYRICS> \n";
$write_string .= "<ARTIST>".$artist."</ARTIST> \n";
$write_string .= "<ALBUM>".$album."</ALBUM> \n";
$write_string .= "<PRODUCER>".$produser."</PRODUCER> \n";
$write_string .= "<PUBLISHER>".$publisher."</PUBLISHER> \n";
$write_string .= "<LENGTH>".$length."</LENGTH> \n";
$write_string .= "<YEAR>".$year."</YEAR> \n";
$write_string .= "</SONG> \n";
$write_string .= "</SONGS> \n";

$fp = fopen&#40;"123.xml", "w"&#41;;
fwrite&#40;$fp, $write_string&#41; or die&#40;"Error writing to file"&#41;;
fclose&#40;$fp&#41;;

$xdoc = new DomDocument;
$xmlfile = '123.xml';
$xmlschema = 'p06166.xsd';

//Load the xml document in the DOMDocument object
$xdoc->Load&#40;$xmlfile&#41;;

//Validate the XML file against the schema
if &#40;$xdoc->schemaValidate&#40;$xmlschema&#41;&#41; &#123;
print "Song inserted successfully!! <br />";
&#125;
else &#123;
print "$xmlfile is invalid.\n";
&#125;
το λαθος που μου εμφανιζει ειναι το πιο εξης

Warning: DOMDocument::schemaValidate() [domdocument.schemavalidate]: Element 'SONGS': No matching global declaration available for the validation root. in C:\xampp\htdocs\test.php on line 48
123.xml is invalid.

υπαρχει καμια ιδεα γιατι περνω αυτο το λαθος;;;

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες