Page 1 sur 1

Affiché les departement selon une région via des arrays

Posté : 15 sept. 2016, 21:13
par yoann38
Salut enfin re, dsl 2 sujets à la suite mais l'un va avec l'autre ....

J'essai de créer moi même mon générateur de sitemap du coup j'ai fait ceci:
while ($ligne = $req->fetch(PDO::FETCH_ASSOC)) {  
    $xml.= '<url>' . "\n";
    $xml.= '   <loc>monsite.fr/actu/region-'.strtolower(simplification($aRegion[$ligne["id_region"]])).'/sorties-du-'.$aDepartement[$ligne["id_departements"]].'.html</loc>' . "\n";
    $xml.= '   <changefreq>weekly</changefreq>' . "\n";
    $xml.= '   <priority>0.9</priority>' . "\n";
    $xml.= '</url>' . "\n";
  }
Problème j'essai d'affiché le numéro de départemen selon la région.
Ca marche sauf le numéro du departement qui s'affiche pas.

Mes arrays sont construits ainsi:
// région 
aRegion = array(1 => 'Alsace', 2 => 'Aquitaine', // .....

// départements
$aDepartement = array(
							1 => array(67 => 'Bas-Rhin', 68 => 'Haut-Rhin'),
							2 => array(24 => 'Dordogne', 33 => 'Gironde', 40 => 'Landes', 47 => 'Lot-et-Garonne', 64 => 'Pyrénées-Atlantiques'),
// ....
Merci à vous pour le coup de main

Re: Affiché les departement selon une région via des arrays

Posté : 15 sept. 2016, 21:39
par tof73
à priori :
$aDepartement[$ligne["id_region"]][$ligne["id_departements"]

Re: [RESOLU] Affiché les departement selon une région via des arrays

Posté : 08 nov. 2016, 21:03
par yoann38
Je reprend ça que maintenant :)
Mais vu mon array ca bloque enfait ainsi que récupére le nom du département je ne souhaite que le numéro de département.

Code:
<?php
     include("include/conndb.php");
	 include("include/variables.php");

    set_time_limit(0);	

  $sitemap = "SELECT * FROM loisirs";
  $req = $bdd->query($sitemap);


 while ($ligne = $req->fetch(PDO::FETCH_ASSOC)) {  
  echo '<a>monsite.fr/actu/region-'.strtolower(simplification($aRegion[$ligne["id_region"]])).'/actualite-du-'.$aDepartement[$ligne["id_region"]][$ligne["id_departements"]].'.html</a>' . "\n";
  }
?>
Merci encore

Re: Affiché les departement selon une région via des arrays

Posté : 09 nov. 2016, 08:58
par Spols
la fonction array_search est faite pour toi

http://php.net/array_search

array_search($ligne["id_departements"],.$aDepartement[$ligne["id_region"]]);

Re: Affiché les departement selon une région via des arrays

Posté : 14 nov. 2016, 08:22
par yoann38
Alors ça ne m'affiche pas d'erreur mais ca ne me renvoie pas le numéro de departement
ca reste vide:
<?php
  $sitemap = "SELECT * FROM loisirs";
  $req = $bdd->query($sitemap);


  while ($ligne = $req->fetch(PDO::FETCH_ASSOC)) {  
  echo '<a>monsite.fr/actualite/region-'.strtolower(simplification($aRegion[$ligne["id_region"]])).'/actualite-du-'.array_search($ligne["id_departements"],$aDepartement[$ligne["id_region"]]).'.html</a>' . "\n";
  }
?>
Et ça me renvoie par exemple :
monsite.fr/actualite/region-poitou-charentes/sortie-du-.html

Re: Affiché les departement selon une région via des arrays

Posté : 14 nov. 2016, 09:34
par Spols
As tu débuggé ?

Affiche ton array et ta clé de recherche séparément pour comprendre d'où viens le problème.

Lire la doc dont je t'ai donné le lien t'apporterai aussi des solutions.

Rappel nous les infos dont tu dispose dans ta requète, l'id région et le nom du département ?