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 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138
| <head>
<title>Insertion audio</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<!-- On appelle le fichier qui contient la feuille de style CSS -->
<link rel="stylesheet" media="screen" type="text/css" title="CSS" href="../../../design.css" />
</head>
<body bgcolor="#FFFFFF" background="../../../../../SOMMAIRE%20SOUFFLE%2056/Fond%20-%20oeuvres%202.png">
<!-- Upload du fichier à intégrer -->
<form method="POST" action="upload.php" enctype="multipart/form-data">
<!-- On limite le fichier à 100Ko -->
<input type="hidden" name="MAX_FILE_SIZE" value="100000">
Fichier : <input type="file" name="avatar">
<input type="submit" name="envoyer" value="Envoyer le fichier">
</form>
<div id="Menu3" style="position:absolute; width:50px; height:50px; z-index:1; left: 30px; top: 100px; visibility: visible">
<table border='2' class="Contour_fenetre_ext" background="../../../../../SOMMAIRE%20SOUFFLE%2056/Fond%20petit.JPG" width="450" height="50" bgcolor="#FFE1C4">
<tr bgcolor="#FFD5AA">
<td class="Contour_fenetre_int" background="../../../../../SOMMAIRE%20SOUFFLE%2056/Degrade5.png">
<form name="form7" method="post">
<label class="Presentation_texte"><font size="-1">Auteur de l'audio insérée: </font></label><br><input type="text" name="auteur_audio" size="30" maxlength="30"><br>
<label class="Presentation_texte"><font size="-1">Titre de l'audio insérée: </font></label><br><input type="text" name="titre_audio" size="40" maxlength="40"><br>
<label class="Presentation_texte"><font size="-1">Site de l'audio insérée: </font></label><br><input type="text" name="site_audio" size="50" maxlength="500"><br>
<span class="Presentation_texte"><font size="-1">Insertion dans "ENREGISTREMENTS_XML": </font></span><br><input type="submit" value="OK"/>
</form>
</td>
</tr>
</table>
</div>
<?php
echo "<br><br><br><br><br><br><br><br><br><br>";
if ($_GET['upload']=="ok")
{
// ********* REQUETE ET INTEGRATION NOUVELLES DONNEES AUDIO DANS LE FICHIER XML VIA "SimpleXML" **********
if (isset($_POST['auteur_audio'])) // Si le visiteur a rentré un auteur sur la liste déroulante
{
$auteur_audio = $_POST['auteur_audio'];
$titre_audio = $_POST['titre_audio'];
$site_audio = $_POST['site_audio'];
echo '<br><br>Auteur enregistré : '.$auteur_audio.'<br>';
echo 'Nouveau titre : '.$titre_audio.'<br>';
echo 'Nouveau site : '.$site_audio.'<br>';
$sous_titre="*********************"; // Titre du 1er bloc (regroupent de lignes) -> A complèter ensuite, manuellement, dans le fichier XML lui-même
// On réceptionne l'enregistrement existant
$xml_file = simplexml_load_file('../../ENREGISTREMENTS_XML.xml'); // Nom du fichier XML utilisé pour enregistrer la totalité des données
// ****Recherche du lieu d'insertion prévu pour les données à entrer ***
$insertion = $xml_file->xpath('auteur[@nom = "'.$auteur_audio.'"]');
echo $insertion[0].'<br />';
// ************* Insertion des données dans le fichier XML **************
$ressource = $insertion[0]->addChild('ressource');
$ressource->addAttribute('titre',$titre_audio);
$ressource->addAttribute('site', $site_audio);
$regroupement=$ressource->addChild('regroupement');
$regroupement->addAttribute('sous_titre',$sous_titre);
// ***** Récupération / contenu (sur 3 colonnes) du fichier marqueur (créé via le logiciel "Audacity") *******
// 1 : on ouvre le fichier
$monfichier = fopen('Nouveau_fichier_a_inserer', 'r+');
$nombre_de_lignes = 50; // Valeur arbitraire, modifiable par la suite...
for ($numéro_de_ligne = 1 ; $numéro_de_ligne <= $nombre_de_lignes ; $numéro_de_ligne++)
{
$fichier = fgets($monfichier);
$fichier = trim($fichier,"\r"); // On retire le caractère de "retour chariot" -> empêcher l'apparition de "
" à chaque fin de ligne dans le fichier XML qui résultera
$extrait = explode("\t", $fichier); // "\t" permet de préciser que le caractère de séparation, ici, est une tabulation
if (strlen($fichier)<1) // -> Si la chaîne est vide...
{
break; // Pour stoper alors la boucle en cours / aux lignes
}
$compteur_colonne = 1;
foreach($extrait as $element)
{
switch ($compteur_colonne)
{
case 1:
echo '* Début / chrono: '.$element;
$début_chrono = $element;
break;
case 2:
// On ne rtient pas l'info de lé 2eme colonne -> on ne fait rien !
break;
case 3:
echo '* Texte: '.$element;
$texte = $element;
$ligne = $regroupement->addChild('ligne', $texte);
$ligne->addAttribute('debut', $début_chrono);
break;
}
$compteur_colonne++;
}
echo '<br>';
}
fclose($monfichier);
//On sauvegarde le fichier xml dans l'enregistrement existant
$xml_file->asXML('../../ENREGISTREMENTS_XML.xml');
// ********* AFFICHAGE DU CONTENU DU FICHIER XML SELON SON ARBORESSENCE AUTEURS / RESSOURCES" **********
echo "<br><br><b>Auteurs enregistrés & nom des ressources) :</b>";
echo "<p>";
foreach ($xml_file->xpath('//auteur') as $auteur)
{
echo $auteur['nom'].'<br />';
foreach ($auteur->ressource as $ressource) // Concernant tous les ressources qui ont été trouvés pour cet auteur...
{
echo '--- '.$ressource['titre'].'<br />'; // ... On affiche tous les titres concernés
}
}
echo "</p>";
}
}
?>
</body>
</html> |
Partager