Accueil
Forum PHPBoost
Support
Support des modules
Articles
faire un menu avec liens des articles aléatoire
Forum PHPBoost
Support
Support des modules
Articles
faire un menu avec liens des articles aléatoire
Forum PHPBoost
bonjour,
voilà ,
J'aimerais créer un menu qui contiendra un lien (d'article) qui changera par exemple toute les 10 secondes.
Je sais comment faire un menu mais je ne sais pas comment m'y prendre pour générer les liens ?
Si quelqu'un pouvait m'aider .
Au départ je me suis dit que j'allais faire ça avec des requéte :
Code PHP :
Et ceci pour les trois valeur donc pour l'id de l'article , la catégorie et le nom .
Mais si je fait comme ça , j'ai bien peur qu'il me donne un id , une catégorie et un nom différent ...
Merci pour l'aide que vous pourrez m'apporter
voilà ,
J'aimerais créer un menu qui contiendra un lien (d'article) qui changera par exemple toute les 10 secondes.
Je sais comment faire un menu mais je ne sais pas comment m'y prendre pour générer les liens ?
Si quelqu'un pouvait m'aider .
Au départ je me suis dit que j'allais faire ça avec des requéte :
Code PHP :
SELECT * tatable ORDER BY RAND() LIMIT 10
Et ceci pour les trois valeur donc pour l'id de l'article , la catégorie et le nom .
Mais si je fait comme ça , j'ai bien peur qu'il me donne un id , une catégorie et un nom différent ...
Merci pour l'aide que vous pourrez m'apporter
Salut,
Pour le faire toute les 10 secondes il faudra que tu utilise AJAX.
Citation:
Non c'est bon comme ça, mais il te faudra juste rajouter un WHERE dans ta requête.
Avec un while tu pourra récupérer la liste des articles correspondant à ta requête, et tu travaillera dans ton while.
Edité par ReidLos Le 25/05/11 à 20h56
Pour le faire toute les 10 secondes il faudra que tu utilise AJAX.
Citation:
Mais si je fait comme ça , j'ai bien peur qu'il me donne un id , une catégorie et un nom différent ...
Non c'est bon comme ça, mais il te faudra juste rajouter un WHERE dans ta requête.
Avec un while tu pourra récupérer la liste des articles correspondant à ta requête, et tu travaillera dans ton while.
Edité par ReidLos Le 25/05/11 à 20h56
oui ce qui implique que je crée un menu par le dossier et non par l'interface ?
Parce que je viens d'essayer et j'ai du mal ( ne connaissant pas le tpl ) , Si vous pouvez me donnez un coup de pouce , merci d'avance ^^
Ps: ajax je ne connais pas non plus je pensait faire comme ceci du coup :
Code PHP :
il m'afficherai les liens que je lui donnerai ( plus simple que ajax ) , mais comment mettre ceci en menu (de plus il ne s'actualisera qu'au rafraichissement de la page mais je mettrais plusieurs appel, pour plusieurs liens) ... ( comme dit plus haut je me suis tenté au tpl mais rien ...
encore merci
Edité par kev6933 Le 25/05/11 à 21h18
Parce que je viens d'essayer et j'ai du mal ( ne connaissant pas le tpl ) , Si vous pouvez me donnez un coup de pouce , merci d'avance ^^
Ps: ajax je ne connais pas non plus je pensait faire comme ceci du coup :
Code PHP :
<?php $tab[0]="tonsite0.com"; $tab[1]="tonsite1.com"; $tab[2]="tonsite2.com"; $tab[3]="tonsite3.com"; $tab[4]="tonsite4.com"; $tab[5]="tonsite5.com"; $tab[6]="tonsite6.com"; $tab[7]="tonsite7.com"; $tab[8]="tonsite8.com"; $nbr=count($tab); srand((double)microtime()*1000000); $lienNbr=rand(1,$nbr); echo '<a href=" http:// '.$tab[$lienNbr].' ">'.$tab[$lienNbr].'</a>'; ?>
il m'afficherai les liens que je lui donnerai ( plus simple que ajax ) , mais comment mettre ceci en menu (de plus il ne s'actualisera qu'au rafraichissement de la page mais je mettrais plusieurs appel, pour plusieurs liens) ... ( comme dit plus haut je me suis tenté au tpl mais rien ...
encore merci
Edité par kev6933 Le 25/05/11 à 21h18
Montre moi tout ton menu s'il te plait.
Pour ton code, oui ça fonctionnera, mais il faut une requête AJAX permettant d'actualisé tes liens.
Pour ton code, oui ça fonctionnera, mais il faut une requête AJAX permettant d'actualisé tes liens.
Justement, je ne sais d'où partir je suis sur un fichier php et tpl vierge ...
Tu peux te baser sur les menus existant (dans le dossier menus).
j'ai essayer justement de modifier ( enfin j'ai fait une copie ) , mais je n'y arrive pas ....
Si tu pouvais me donner un coup de main , merci
Si tu pouvais me donner un coup de main , merci
Montre moi ce que tu as fait.
alors dans mon fichier TPL j'avais repris l'ancien et remplacer le contenu par le php :
Code HTML :
et dans mon fichier php j'avais mis juste le titre enfin comme je disais je ne connais pas du tout le TPL et ses assignations :
Code PHP :Pour cette partie je ne suis pas sure du tout ...
Voilà
Pareil pour ceux qui est de ajax je ne connais pas du tout ...
Edité par kev6933 Le 26/05/11 à 11h18
Code HTML :
<div class="module_mini_container"> <div class="module_mini_top"> <h5 class="sub_title">{TITLE}</h5> </div> <form action="" method="get"> <div class="module_mini_contents"> <?php $tab[0]="tonsite0.com"; $tab[1]="tonsite1.com"; $tab[2]="tonsite2.com"; $tab[3]="tonsite3.com"; $tab[4]="tonsite4.com"; $tab[5]="tonsite5.com"; $tab[6]="tonsite6.com"; $tab[7]="tonsite7.com"; $tab[8]="tonsite8.com"; $nbr=count($tab); srand((double)microtime()*1000000); $lienNbr=rand(1,$nbr); echo '<a href=" http:// '.$tab[$lienNbr].' ">'.$tab[$lienNbr].'</a>'; ?> </div> </form> <div class="module_mini_bottom"> </div> </div>
et dans mon fichier php j'avais mis juste le titre enfin comme je disais je ne connais pas du tout le TPL et ses assignations :
Code PHP :
function menu_copyright_copyright($position, $block) // On indique le nom du menu que l'on retrouvera dans l'admin/menu/gestion { $tpl = new Template('menus/Menu aleatoire'); // On assigne le tpl import('core/menu_service'); MenuService::assign_positions_conditions($tpl, $block); $tpl->assign_vars(array( 'TITLE' => 'Titre de mon module', )); return $tpl->parse(TEMPLATE_STRING_MODE); }
Voilà
Pareil pour ceux qui est de ajax je ne connais pas du tout ...
Edité par kev6933 Le 26/05/11 à 11h18
Code PHP :
Tu met : menus/copyright/copyright.tpl
Dans le dossier menus tu créer ton dossier copyright, avec ton fichier php à la racine et un dossier templates avec copyright.tpl
Tu vas dans l'administration/menus et tu active ton menu copyright.
$tpl = new Template('menus/Menu aleatoire');
Tu met : menus/copyright/copyright.tpl
Dans le dossier menus tu créer ton dossier copyright, avec ton fichier php à la racine et un dossier templates avec copyright.tpl
Tu vas dans l'administration/menus et tu active ton menu copyright.
Alors je viens de créer le dossier copyright dans mon dossier menus , ensuite j'ai mis le fichier php que j'avais ( en modifiant la variable $tpl ) et dans mon dossier templates j'ai remis le fichier tpl que j'avais.
Mais quand j'active le menu il est vide ( pas de titre, pas de contenu )
PS: même dans l'administration des menus , il a aucun titre ...
Il faudrait pas que je fasse quelque chose comme ça ?
Code PHP :
Enfin je sais pas ( je connais pas du tout )
Edité par kev6933 Le 26/05/11 à 11h59
Mais quand j'active le menu il est vide ( pas de titre, pas de contenu )
PS: même dans l'administration des menus , il a aucun titre ...
Il faudrait pas que je fasse quelque chose comme ça ?
Code PHP :
$tpl->assign_vars(array( 'CONTENU' =>' <?php $tab[0]="tonsite0.com"; $tab[1]="tonsite1.com"; $tab[2]="tonsite2.com"; $tab[3]="tonsite3.com"; $tab[4]="tonsite4.com"; $tab[5]="tonsite5.com"; $tab[6]="tonsite6.com"; $tab[7]="tonsite7.com"; $tab[8]="tonsite8.com"; $nbr=count($tab); srand((double)microtime()*1000000); $lienNbr=rand(1,$nbr); echo '<a href=" http:// '.$tab[$lienNbr].' ">'.$tab[$lienNbr].'</a>'; ?>',
Enfin je sais pas ( je connais pas du tout )
Edité par kev6933 Le 26/05/11 à 11h59
bon une avancer j'ai reussi a trouver le problème mais je ne peut pas mettre le code php ile ne m'affiche rien ...
Dans le tpl le php n'est pas pris en compte ?
Et quand j'essaie de l'assigner ma page devient blanche ...
Alors du coup maintenant ça marche voici mon code
Code PHP :
Ps: encore un problème , Des fois mes liens s'affiche d'autre fois il ne s'affiche plus ...
Merci d'avance
Edité par kev6933 Le 26/05/11 à 13h39
Dans le tpl le php n'est pas pris en compte ?
Et quand j'essaie de l'assigner ma page devient blanche ...
Alors du coup maintenant ça marche voici mon code
Code PHP :
$tab[0]="tonsite0.com"; $tab[1]="tonsite1.com"; $tab[2]="tonsite2.com"; $tab[3]="tonsite3.com"; $tab[4]="tonsite4.com"; $tab[5]="tonsite5.com"; $tab[6]="tonsite6.com"; $tab[7]="tonsite7.com"; $tab[8]="tonsite8.com"; $tit[0]="tonsite0"; $tit[1]="tonsite1"; $tit[2]="tonsite2"; $tit[3]="tonsite3"; $tit[4]="tonsite4"; $tit[5]="tonsite5"; $tit[6]="tonsite6"; $tit[7]="tonsite7"; $tit[8]="tonsite8"; $nbr=count($tab); srand((double)microtime()*1000000); $lienNbr=rand(1,$nbr); $tpl->assign_vars(array( 'TITLE' => 'Titre de mon module', 'CONTENU' => '<a href=" http:// '.$tab[$lienNbr].' ">'.$tit[$lienNbr].'</a>', ));
Ps: encore un problème , Des fois mes liens s'affiche d'autre fois il ne s'affiche plus ...
Merci d'avance
Edité par kev6933 Le 26/05/11 à 13h39
Donne moi tout ton code s'il te plait.
donc j'ai réussi je poste mon code si ça intéresse d'autre personnes :
ma page php:
Code PHP :
c'est un peu primitif, je cherche toujours la fonction AJAX pour réactualisé cette parti automatiquement .
et ma page tpl :
Code HTML :
Merci pour ton aide reidlos
Edité par kev6933 Le 26/05/11 à 15h20
ma page php:
Code PHP :
<?php function menu_copyright_copyright($position, $block) // On indique le nom du menu que l'on retrouvera dans l'admin/menu/gestion { $tpl = new Template('menus/copyright/copyright.tpl'); // On assigne le tpl import('core/menu_service'); MenuService::assign_positions_conditions($tpl, $block); $url[0]="121&cat=6"; $url[1]="61&cat=5"; $url[2]="54&cat=6"; $url[3]="108&cat=16"; $url[4]="85&cat=9"; $url[5]="124&cat=9"; $url[6]="47&cat=24"; $url[7]="25&cat=29"; $url[8]="58&cat=22"; $url[9]="41&cat=5"; $url[10]="25&cat=5"; $url[11]="99&cat=5"; $url[12]="51&cat=6"; $url[13]="3&cat=6"; $url[14]="119&cat=6"; $url[15]="120&cat=6"; $tit[0]="Bob Marley - Is This Love"; $tit[1]="Aaron - U Turn "; $tit[2]="Ben l'oncle soul - Soulman"; $tit[3]="Laurent voulzy - Belle ile en Mer"; $tit[4]="Eagle Eye Cherry – Save tonight"; $tit[5]="Evanescence - My Immortal"; $tit[6]="Tom Frager - Lady Melody"; $tit[7]="Ycare- alison"; $tit[8]="Renan Luce - La fille de la bande"; $tit[9]="Amy Macdonald - This is the life"; $tit[10]="Angus and julia - Big jet plane"; $tit[11]="Avril Lavigne – What the hell"; $tit[12]="Bensé - Au grand jamais"; $tit[13]="Bethany joy - When the stars go.."; $tit[14]="Bob Marley - No woman no cry"; $tit[15]="Bob Marley - One Love"; $nbr=count($url); $nbr = $nbr - 1; $DeuxNbr=count($url); $DeuxNbr = $DeuxNbr - 1; $TroisNbr=count($url); $TroisNbr = $TroisNbr - 1; srand((double)microtime()*1000000); $lienNbr=rand(1,$nbr); $lienDeuxNbr=rand(1,$DeuxNbr); $lienTroisNbr=rand(1,$TroisNbr); if( $lienNbr == $lienDeuxNbr || $lienNbr == $lienTroisNbr ){ srand((double)microtime()*1000000); $lienNbr=rand(1,$nbr); } if($lienDeuxNbr == $lienNbr || $lienDeuxNbr == $lienTroisNbr) { srand((double)microtime()*1000000); $lienDeuxNbr=rand(1,$DeuxNbr); } if($lienTroisNbr == $lienNbr || $lienTroisNbr == $lienDeuxNbr ) { srand((double)microtime()*1000000); $lienTroisNbr=rand(1,$TroisNbr); } $tpl->assign_vars(array( 'TITLE' => 'Tablatures Aux hasard', 'CONTENU' => '<a style="font-size:9px;" href=" http://guitareasy.fr/articles/articles.php?id='.$url[$lienNbr].' "><FONT color="orange">'.$tit[$lienNbr].'</FONT></a>', 'CONTENUDEUX' => '<a style="font-size:9px;" href=" http://guitareasy.fr/articles/articles.php?id='.$url[$lienDeuxNbr].' "><FONT color="orange">'.$tit[$lienDeuxNbr].'</FONT></a>', 'CONTENUTROIS' => '<a style="font-size:9px;" href=" http://guitareasy.fr/articles/articles.php?id='.$url[$lienTroisNbr].' "><FONT color="orange">'.$tit[$lienTroisNbr].'</FONT></a>', )); return $tpl->parse(TEMPLATE_STRING_MODE); } ?>
c'est un peu primitif, je cherche toujours la fonction AJAX pour réactualisé cette parti automatiquement .
et ma page tpl :
Code HTML :
<div class="module_mini_container"> <div class="module_mini_top"> <h5 class="sub_title">{TITLE}</h5> </div> <div class="module_mini_contents"> {CONTENU}<br> {CONTENUDEUX}<br> {CONTENUTROIS} </div> <div class="module_mini_bottom"> </div> </div>
Merci pour ton aide reidlos
Edité par kev6933 Le 26/05/11 à 15h20
je verrai plus ce genre de chose (à tester et à modifier à ton gout)
Code PHP :
Edité par ReidLos Le 26/05/11 à 15h33
Code PHP :
function menu_copyright_copyright($position, $block) // On indique le nom du menu que l'on retrouvera dans l'admin/menu/gestion { $tpl = new Template('menus/copyright/copyright.tpl'); // On assigne le tpl import('core/menu_service'); MenuService::assign_positions_conditions($tpl, $block); $array = array( array('title' => 'Bob Marley - Is This Love', 'url' => 'articles/articles.php?id=121&cat=6'), array('title' => 'Aaron - U Turn', 'url' => 'articles/articles.php?id=61&cat=5'), array('title' => 'Ben l\'oncle soul - Soulman', 'url' => 'articles/articles.php?id=54&cat=6'), array('title' => 'Laurent voulzy - Belle ile en Mer', 'url' => 'articles/articles.php?id=108&cat=16'), array('title' => 'Eagle Eye Cherry – Save tonight', 'url' => 'articles/articles.php?id=85&cat=9'), ); $tpl->assign_vars(array( 'TITLE' => 'Tablatures Aux hasard' )): $number_key = count($array); for ($i = 0; $i <= $number_key; $i++) { $random = rand(1, $number_key); $chosen_value = $array[$random]; $tpl->assign_block_vars('random_article', array( 'TITLE' => $chosen_value['title'], 'URL' => $chosen_value['url'], )); } return $tpl->parse(TEMPLATE_STRING_MODE); }
Edité par ReidLos Le 26/05/11 à 15h33
2 Utilisateurs en ligne :: 0 Administrateur, 0 Modérateur, 0 Membre et 2 Visiteurs
Utilisateurs en ligne: Aucun membre connecté
Utilisateurs en ligne: Aucun membre connecté
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie





PHPBoost

Support
Téléchargements
Développement
Communauté














