$idCheckbox) { //echo "nomVariableCheckbox ".$nomVariableCheckbox."
"; foreach ($idCheckbox as $id => $valeur) { echo $nomVariableCheckbox.'['.$id.']='.$valeur."
"; $departement[$i] = $nomVariableCheckbox.'['.$id.']='.$valeur; } } break; case 'listeDepartements' : if((isset($p_mois)) && (isset($p_region))){ chargementPage('listeDepartements.tpl',$p_mois,$p_region,NULL); }else{ chargementPage(NULL,NULL,NULL,NULL); } break; default : chargementPage(NULL,NULL,NULL,NULL); break; } }else { chargementPage(NULL,NULL,NULL,NULL); } function chargementPage($page,$idMois,$idRegion,$idDepartements) { include 'template.class.php'; switch($page) { case 'listeDepartements.tpl': affichageDepartements($idMois,$idRegion); break; case 'index.tpl': affichageIndex(); break; default : affichageIndex(); break; } } function affichageDepartements($idMois,$idRegion){ // Instanciation de la classe $t = new Template('templates/listeDepartements.tpl'); // Simple variable $t->simpleVar(array( 'PAGE' => 'Recherche des braderies', 'P_MOIS' => $idMois, 'P_REGION' => $idRegion, )); // calendrier/imprimable/choix_dep.php?p_mois=1®ion=9 $urlDeRecuperation = 'calendrier/imprimable/choix_dep.php?p_mois='.$idMois.'®ion='.$idRegion; //Récupération de la page d'accueil de Point de Chine $pageDepartements = recuperationPageSurPointDeChine($urlDeRecuperation); //echo $pageDepartements; //Expression régulière scrutant les ids mois et les noms des mois preg_match_all("|name=\"(dpt\[[\d]+\])\" value=\"([\d]+)\"|U", $pageDepartements, $outDepartements, PREG_SET_ORDER); for($i=0;$i < sizeof($outDepartements);$i++) { $tmpVariable = $outDepartements[$i][1]; $tmpValeur = $outDepartements[$i][2]; //echo $tmpVariable.' = '.$tmpValeur.'
'; $departementParse[$tmpVariable] = $tmpValeur; } foreach ($departementParse as $nom => $valeur) { $t->loopVar('variable', array( 'NOM' => $nom, 'VALEUR' => $valeur )); } $t->parse(); } function affichageIndex(){ // Instanciation de la classe $t = new Template('templates/index.tpl'); // Simple variable $t->simpleVar(array( 'PAGE' => 'Recherche des départements', )); //Récupération de la page d'accueil de Point de Chine $pageAccueil = recuperationPageSurPointDeChine("index.php"); //Expression régulière scrutant les ids mois et les noms des mois preg_match_all("|calendrier-region\.php\?p_mois=(\d)\" class=\"sommaire\">(.+)]+>|U", $pageAccueil, $outAccueil, PREG_SET_ORDER); $mois = array("vide","janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"); //Mois en cours $idMois = date('n'); $moisParse[][] = array(); //On parcours nos résultats des mois for($i=0;$i < sizeof($outAccueil);$i++) { $tmpId = $outAccueil[$i][1]; $tmpMois = $outAccueil[$i][2]; $moisParse[$tmpId] = $tmpMois; } //Récupération de la page régions de Point de Chine $pageRegions = recuperationPageSurPointDeChine("calendrier/calendrier-region.php?p_mois=0"); //Expréssion régulière scrutant les ids régions et les noms de régions preg_match_all("|\"[\.\ô\w\-\&\;]*\" $mois) { $t->loopVar('mois', array( 'ID' => $id, 'MOIS' => $mois )); } foreach ($regionsParse as $id => $region) { $t->loopVar('region', array( 'ID' => $id, 'REGION' => $region )); } $t->parse(); } function recuperationPageSurPointDeChine($page) { /* Lit le port du service WWW. */ $service_port = getservbyname('www', 'tcp'); /* Lit l'adresse IP du serveur de destination */ $address = gethostbyname('www.pointsdechine.com'); /* Cree une socket TCP/IP. */ $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); if ($socket === false) { echo "socket_create() a échoué : raison : " . socket_strerror(socket_last_error()) . "
\n"; } else { // echo "OK.\n"; } //echo "Essai de connexion à '$address' sur le port '$service_port'..."; $result = socket_connect($socket, $address, $service_port); if ($socket === false) { echo "socket_connect() a échoué : raison : ($result) " . socket_strerror(socket_last_error($socket)) . "
\n"; } else { //echo "OK.\n"; } $in = "GET /".$page." HTTP/1.1\r\n"; $in .= "Host: www.pointsdechine.com\r\n"; $in .= "User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; fr; rv:1.8.1.3) Gecko/20070321 Firefox/2.0.0.3\r\n"; $in .= "Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5\r\n"; $in .= "Accept-Language: fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3\r\n"; $in .= "Accept-Encoding: gzip,deflate\r\n"; $in .= "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\r\n"; $in .= "Keep-Alive: 300\r\n"; $in .= "Connection: keep-alive\r\n"; $in .= "Cache-Control: max-age=0\r\n"; $in .= "Connection: Close\r\n\r\n"; $out = ''; //echo "Envoi de la requête HTTP GET..."; socket_write($socket, $in, strlen($in)); //echo "OK.\n"; //echo "Lire la réponse : \n\n"; while ($out = socket_read($socket, 2048)) $out2 .= $out; return($out2); } ?>