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
| ################# text et boutons level 1 ##################################################
// Initialiser la mise en tampon de la sortie standard
ob_start();
################################# boutons ######################################
// Récupérer la liste des articles
$sql = 'SELECT id_url_btn_2,nom_btn_pri FROM btn_pri WHERE lang = \'' . $_GET['lang'] . '\'';
$result = mysql_query($sql) or die(__LINE__ . ' : ' . mysql_error());
while ($info = mysql_fetch_assoc($result)) {
printf('<a href="xxx.php5?lang=%s&get1=%s">%s</a><br />', $_GET['lang'], $info['id_url_btn_2'], $info['nom_btn_pri']);
}
################################# réécrit url ##################################
// Récupérer le tampon et arrêter la mise en cache
$contents = ob_get_contents();
ob_end_clean();
// Récupérer les liens à l'aide d'une expression régulière
if (preg_match_all('#<a href="xxx.php5\?lang=' . $_GET['lang'] . '&get1=([a-z]+)">(.+)</a>#Usi', $contents, $matches, PREG_SET_ORDER)) {
// Parcourir les liens et les réécrire à l'aide de la base de données
foreach ($matches as $match) {
$pattern = $match[0];
$article_id = $match[1];
$anchor = $match[2];
$sql = 'SELECT nom_btn_pri FROM `btn_pri` WHERE lang = \'' . $_GET['lang'] . '\'';
$result = mysql_query($sql) or die(__LINE__ . ' : ' . mysql_error());
if ($article = mysql_fetch_assoc($result)) {
$new_url = '<a href="' . $_GET['lang'] . '-' . $article_id . '-' . clean($article['nom_btn_pri']) . '.html" ' . 'title="' . $article['nom_btn_pri'] . '">' . $article['nom_btn_pri'] . '</a>';
$contents = str_replace($pattern, $new_url, $contents);
}
}
}
// Afficher les boutons
echo $contents; |
Partager