1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93
|
function exportXML(){
// Création d'une instance de la classe DOMImplementation
$imp = new DOMImplementation;
// Création d'une instance DOMDocumentType
$dtd = $imp->createDocumentType('LISTE', '', 'xml/liste.dtd');
// Création d'une instance DOMDocument
$document = $imp->createDocument("", "", $dtd);
//Création de la balise LISTE
$liste = $document -> createElement('LISTE');
$document -> appendChild($liste);
//Requete récupérant tous les films
$query_film = "SELECT *
FROM films
GROUP BY code_film;";
$result_film = mysql_query($query_film);
//Enregistrement des films
While($donnee_film = mysql_fetch_array($result_film)){
//Création de la balise FILM
$film = $document -> createElement('FILM');
$liste -> appendChild($film);
//Création des attributs de FILM
$film -> setAttribute('code_film', utf8_encode($donnee_film[0]));
$film -> setAttribute('pays', utf8_encode($donnee_film[3]));
$film -> setAttribute('date', utf8_encode($donnee_film[4]));
$film -> setAttribute('duree', utf8_encode($donnee_film[5]));
$film -> setAttribute('couleur', utf8_encode($donnee_film[6]));
//Création de la balise TITRE et des ses attributs
$titre = $document -> createElement('TITRE');
$film -> appendChild($titre);
$titre -> setAttribute('titre_original', utf8_encode($donnee_film[1]));
$text = $document -> createTextNode(utf8_encode($donnee_film[2]));
$titre -> appendChild($text);
//Requete récupérant tous les genre d'un film
$query_genre="SELECT code_genre, nom_genre
FROM genres, classification
WHERE classification.ref_code_genre = genres.code_genre
AND ref_code_film='".$donnee_film[0]."';";
$result_genre=mysql_query($query_genre);
//Enregistrement des genres
While($donnee_genre = mysql_fetch_array($result_genre)){
//Création de la balise GENRE et de ses attributs
$genre = $document -> createElement('GENRE');
$film -> appendChild($genre);
$genre -> setAttribute('code_genre', utf8_encode($donnee_genre[0]));
$text = $document -> createTextNode(utf8_encode($donnee_genre[1]));
$genre -> appendChild($text);
}
//Requete récupérant les acteurs d'un film
$query_acteur="SELECT code_indiv, nom, prenom, nationalite, date_naiss, date_mort
FROM individus, acteurs
WHERE acteurs.ref_code_acteur = individus.code_indiv
AND ref_code_film='".$donnee_film[0]."';";
$result_acteur=mysql_query($query_acteur);
//Enregistrement des acteurs
While($donnee_acteur = mysql_fetch_array($result_acteur)){
//Création de la balise ACTEUR et de ses attributs
$acteur = $document -> createElement('ACTEUR');
$film -> appendChild($acteur);
$acteur -> setAttribute('ref_code_acteur', utf8_encode($donnee_acteur[0]));
$acteur -> setAttribute('nom', utf8_encode($donnee_acteur[1]));
$acteur -> setAttribute('prenom', utf8_encode($donnee_acteur[2]));
$acteur -> setAttribute('nationalite', utf8_encode($donnee_acteur[3]));
$acteur -> setAttribute('date_naiss', utf8_encode($donnee_acteur[4]));
$acteur -> setAttribute('date_mort', utf8_encode($donnee_acteur[5]));
}
//requete récupérant le réalisateur
$query_realis = "SELECT *
FROM individus
WHERE code_indiv='".$donnee_film[7]."';";
$result_realis = mysql_query($query_realis);
//Enregistrement du réalisateur
While($donnee_realis = mysql_fetch_array($result_realis)){
//Création de la balise REALISATEUR
$realisateur = $document -> createElement('REALISATEUR');
$film -> appendChild($realisateur);
$realisateur -> setAttribute('realisateur', utf8_encode($donnee_realis[0]));
$realisateur -> setAttribute('nom', utf8_encode($donnee_realis[1]));
$realisateur -> setAttribute('prenom', utf8_encode($donnee_realis[2]));
$realisateur -> setAttribute('nationalite', utf8_encode($donnee_realis[3]));
$realisateur -> setAttribute('date_naiss', utf8_encode($donnee_realis[4]));
$realisateur -> setAttribute('date_mort', utf8_encode($donnee_realis[5]));
}
}
//Sauvegarde du document XML
$document -> save('xml/liste.xml');
//Vérification du XML
if($document -> Validate()){
echo "<script>alert('Le document a été validé!')</script>";
}else{
echo "<script>alert('Le document n'est pas bon!')</script>";
}
} |
Partager