Une autre vision du monde gay et lesbien.
Moins de stéréotypes, plus d'information.

XML, PHP ou HTML?
Aller à la page 1, 2  Suivante
 
Poster un nouveau sujet   Répondre au sujet    Et-alors.net Index du Forum -> Informatique, internet, jeux-vidéo
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
Nox
Pedasse


Sexe: Sexe:Masculin
Inscrit le: 30 Juin 2005
Age : 23

Localisation: Paris Nation, Nice

MessagePosté le: Jeu Aoû 18, 2005 18:40    Sujet du message: Répondre en citant

C'est vraiment pas clair la façon dont t'expose ton problème...

Je suppose que ce que tu cherches à faire c'est d'avoir la playlist complète de ta radio sur ton PC, sachant que la liste fournie par le serveur de radio FG (qui est au format XML) n'affiche que les derniers titres.

Bon déjà c'est possible, c'est un bon point. Il faut nécessairement un programme qui tourne en boucle en tache de fond.
1. Soit Javascript, donc en passant par une page HTML
2. Soit un programme (C++, PHP pur, ...)

Sauf que dans le premier cas on peut pas stocker les données ailleurs que dans une boite de texte si t'as pas un serveur sous PHP sur ton PC ou sur un site à toi (pas très pratique dans ce dernier cas). T'as pas de serveur PHP non ?
_________________
Spread luv <3
Live, move, be, discover, go, take, play, construct. Get friendz, get fun, get love, get fucked, get life. Keep it. Fear sux. NOLIFING IS EVIL.
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Envoyer un e-mail MSN Messenger
Nox
Pedasse


Sexe: Sexe:Masculin
Inscrit le: 30 Juin 2005
Age : 23

Localisation: Paris Nation, Nice

MessagePosté le: Jeu Aoû 18, 2005 19:07    Sujet du message: Répondre en citant

Comme je l'ai dit tu peux faire sans, mais avec la première méthode tu ne peux pas stocker tes données dans un fichier, tu sera obligé de les prendre dans une boite de texte.

L'autre problème c'est que si a un moment de la journée ta playlist est inaccessible, le script plantera.
_________________
Spread luv <3
Live, move, be, discover, go, take, play, construct. Get friendz, get fun, get love, get fucked, get life. Keep it. Fear sux. NOLIFING IS EVIL.
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Envoyer un e-mail MSN Messenger
Nox
Pedasse


Sexe: Sexe:Masculin
Inscrit le: 30 Juin 2005
Age : 23

Localisation: Paris Nation, Nice

MessagePosté le: Jeu Aoû 18, 2005 19:38    Sujet du message: Répondre en citant

Si ça plante souvent c'est déjà une mauvaise idée.
le fonctionnement d'une page ? Tu l'a en face de toi !

Le tas de fonctions javascript servent à se connecter au fichier XML chroniquement et ensuite de le formater pour qu'il affiche ça bien.

Il faudrait rajouter des petites fonctions en plein milieu mais en Javascript ce serait très moche, il gère assez mal les tableaux.

Vaut mieux un serveur PHP, au moins le script serait plus simple et efficace.
_________________
Spread luv <3
Live, move, be, discover, go, take, play, construct. Get friendz, get fun, get love, get fucked, get life. Keep it. Fear sux. NOLIFING IS EVIL.
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Envoyer un e-mail MSN Messenger
Coolio
Queer-Master
Queer-Master


Sexe: Sexe:Masculin
Inscrit le: 30 Juin 2005

Localisation: au Tralalabar

MessagePosté le: Jeu Aoû 18, 2005 21:33    Sujet du message: Répondre en citant

C'est beaaaaaaau l'informatique waaw Shocked


mais sa vaut pas d'la nik, j'le repeteré jamais assez

ok je sors Arrow
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé
PlaintecontriX
Homo sapiens
Homo sapiens


Sexe: Sexe:Masculin
Inscrit le: 24 Juil 2005
Age : 23

Localisation: là là là...

MessagePosté le: Ven Aoû 19, 2005 20:53    Sujet du message: Répondre en citant

Salut Razz

J'ai écrit un ptit script php qui sauve la playlist en local (en xml) et l'affiche aussi...
C'est une un truc comme ça dont tu as besoin ?
Je l'ai justé testé en local mais ca doit marcher sur n'importe quel hébergement gratuit qui permet d'écrire des fichiers (genre lycos)
Après tu as juste à garder une fenêtre de ton navigateur ouverte, et ce sera mis à jour toute les 5min. (et si le navigateur plante, ça ne pose pas de problème puisque c'est sauvé sur le serveur)

Me suis bien amusé à écrire ça moi

Code:
<?
   $Remote_PlayList ="http://www.radiofg.com/rcs/XMLSongs.xml";
   $Local_PlayList = "FGPlaylist.xml"; 
   $RefreshTime = 5*60;
?>
<html>
<head>
   <title>FG Playlist</title>
   <meta http-equiv="refresh" content="<? echo $RefreshTime ?>">
</head>      
<body>
<?php
$SongInfo = array(array());
$id = 0;    
 
function filesize_url($url){
   return ($data = file_get_contents($url)) ? strlen($data) : false;
}

function Display_Array($a){ 
   echo '<table>';   
   foreach ($a as $value){
      echo '<tr>';
      echo "<td><i>".$value["time"]."</i> <td>";      
      echo "<td><b><font color=\"#0099FF\">".$value["song"]."</font></b></td>";
      echo "<td><b>".$value["artist"]."</b></td>";
      echo '</tr>' ;
   }   
   echo '</table>';   
}   

function startElement($parser, $name, $attrs)
{
   global $id, $SongInfo;   
   if ($name=="EVENT") {
         $SongInfo[$id]["time"] = $attrs["STARTTIME"];   
   }else if ($name=="S:SONG"){
       $SongInfo[$id]["song"] = $attrs["TITLE"];   
   }else if ($name=="S:ARTIST"){   
         $SongInfo[$id]["artist"] = $attrs["NAME"];   
   }else if ($name=="M:MEDIA"){      
      $SongInfo[$id]["duree"] = $attrs["RUNTIME"];   
      $id++;
   }   
}

function endElement($parser, $name){}   

function Parse_XML_Playlist($XML_File,$fp){   
   global $id, $SongInfo;
   
   $id = 0;
   $xml_parser = xml_parser_create();
   xml_set_element_handler($xml_parser, "startElement", "endElement");
   
   while ($data = fread($fp, 4096)) {
      if (!xml_parse($xml_parser, $data, feof($fp))) {
          die(sprintf("XML error: %s at line %d",
                      xml_error_string(xml_get_error_code($xml_parser)),
                      xml_get_current_line_number($xml_parser)));
      }
   }   

   xml_parser_free($xml_parser);

   return  $SongInfo;
}   

function Create_New_List($current,$old){
   $NewArr = array(array());
   $id = 0;
   while ($current[$id]!=$old[0]) {
      $NewArr[$id]["time"]   = $current[$id]["time"];
      $NewArr[$id]["song"]   = $current[$id]["song"];
      $NewArr[$id]["artist"] = $current[$id]["artist"];
      $NewArr[$id]["duree"]  = $current[$id]["duree"];      
      $id++;
   }
   foreach ($old as $value){
      $NewArr[$id]["time"]   = $value["time"];
      $NewArr[$id]["song"]   = $value["song"];
      $NewArr[$id]["artist"] = $value["artist"];
      $NewArr[$id]["duree"]  = $value["duree"];
      $id++;
   }   
   return $NewArr;
}

function SaveWholePlaylist($arr,$fp){
   fwrite($fp,'<?xml version="1.0" encoding="iso-8859-1" ?>'."\n<Schedule>\n");
   foreach ($arr as $value){
      fwrite($fp,"<Event status=\"happened\" startTime=\"".$value["time"]."\" eventType=\"song\">\n");
      fwrite($fp,"   <s:Song title=\"".$value["song"]."\">\n");
      fwrite($fp,"      <s:Artist name=\"".$value["artist"]."\">\n");
      fwrite($fp,"         <m:Media runTime=\"".$value["duree"]."\"/>\n");
      fwrite($fp,"      </s:Artist>\n");
      fwrite($fp,"   </s:Song>\n");
      fwrite($fp,"</Event>\n");   
   }
   fwrite($fp,"</Schedule>\n");
   fclose($fp);   
}

// debut du code: 

if (!($fp_remote = fopen($Remote_PlayList,'r'))){ 
   die('<BR>Playlist inacessible !<BR>');
}

if (file_exists($Local_PlayList)){
   $fp_local = fopen($Local_PlayList,'r+');
   $Updated_SongInfo = Create_New_List(Parse_XML_Playlist($Remote_PlayList,$fp_remote),Parse_XML_Playlist($Local_PlayList,$fp_local));
   fclose($fp_local);
   $fp_local = fopen($Local_PlayList,'w+');
}else{
   $fp_local = fopen($Local_PlayList,'x');   
   $Updated_SongInfo = Parse_XML_Playlist($Remote_PlayList,$fp_remote);
}   
 
SaveWholePlaylist($Updated_SongInfo,$fp_local);
Display_Array($Updated_SongInfo);

?>
</body>
</html>

_________________
Le geek bio a une signature à 2€ et lit l'UTF-8 encodé en ISO-8859-1... plusieurs fois.


Dernière édition par PlaintecontriX le Sam Aoû 20, 2005 0:36; édité 1 fois
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
Nox
Pedasse


Sexe: Sexe:Masculin
Inscrit le: 30 Juin 2005
Age : 23

Localisation: Paris Nation, Nice

MessagePosté le: Ven Aoû 19, 2005 21:57    Sujet du message: Répondre en citant

Il s'est quand même tapé 126 lignes de code pour toi...
Rha c'est beau l'amour Laughing
_________________
Spread luv <3
Live, move, be, discover, go, take, play, construct. Get friendz, get fun, get love, get fucked, get life. Keep it. Fear sux. NOLIFING IS EVIL.
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Envoyer un e-mail MSN Messenger
PlaintecontriX
Homo sapiens
Homo sapiens


Sexe: Sexe:Masculin
Inscrit le: 24 Juil 2005
Age : 23

Localisation: là là là...

MessagePosté le: Sam Aoû 20, 2005 0:35    Sujet du message: Répondre en citant

bobby a écrit:
ah en fait y a des erreurs dasn ton code ... j'ai essayé de regarder mais trop fatigué regarderais demain merki kan mm


Des erreurs ? Non, non, y'a pas d'erreurs ^^ Mais efectivement ca marche pas avec lycos, mais j'ai testé et ca marche Wink

Nox a écrit:
Il s'est quand même tapé 126 lignes de code pour toi...
Rha c'est beau l'amour

tsss, mon crayon ne dérape pas moi
_________________
Le geek bio a une signature à 2€ et lit l'UTF-8 encodé en ISO-8859-1... plusieurs fois.
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
PlaintecontriX
Homo sapiens
Homo sapiens


Sexe: Sexe:Masculin
Inscrit le: 24 Juil 2005
Age : 23

Localisation: là là là...

MessagePosté le: Sam Aoû 20, 2005 14:53    Sujet du message: Répondre en citant

*viens de comprendre*
Non, en fait j'avais raison ça marchait quand j'ai posté, la mise a jour de la playlist a fait planter le script

C'est corrigé Razz

edit: il restait un bug pour les noms de chansons/artistes avec caractères spéciaux, c'est corrigé ^^
_________________
Le geek bio a une signature à 2€ et lit l'UTF-8 encodé en ISO-8859-1... plusieurs fois.


Dernière édition par PlaintecontriX le Dim Aoû 21, 2005 14:28; édité 1 fois
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    Et-alors.net Index du Forum -> Informatique, internet, jeux-vidéo Toutes les heures sont au format GMT + 1 Heure
Aller à la page 1, 2  Suivante
Page 1 sur 2

 
Sauter vers:  
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum


Powered by phpBB © 2001, 2005 phpBB Group. Traduction par : phpBB-fr.com
© 2005 et-alors.net. Reproduction interdite. N° CNIL : 1104460.
Contact forum: modérateurs. Contact administratif: .