Champ recherche dans ma page index.php [Réglé]
DaaX Membre non connecté
Booster Mortier
-
Booster Mortier
- Voir le profil du membre DaaX
- Inscrit le : 08/09/2009
- Site internet
Je voudrais inclure le champ de recherche dans ma page index.php.
Faut-il que je reprenne le code qui se trouve dans le fichier ./templates/base/modules/search/search_mini.tpl directement dans mon fichier ou puis-je faire simplement une inclusion et lui assigner un fichier alternatif de style (css) ?
J'ai testé dans ma page index.php en incluant le code de ce fichier et lorsque je fait une recherche, j'obtiens une erreur 404.
Je ne fais certainement pas la bonne chose.
Merci à l'avance.
Swink Membre non connecté
Booster Fuzil
-
Booster Fuzil
- Voir le profil du membre Swink
- Inscrit le : 18/04/2009
- Site internet
Moi j'ai rajouté un champ de recherche dans une barre en bas de page (une barre qui suit le navigatuer comme sur facebook ^^)
Pour la partie html/tpl j'ai ajouté ce code là
Code TPL :
<form action="{U_FORM_VALID}" onsubmit="return check_search_mini_form_post();" method="post">
<input type="text" size="14" id="TxTMiniSearched" name="q" value="{TEXT_SEARCHED}" class="search_entry" onclick="if(this.value=='{L_SEARCH}...')this.value='';" onblur="if(this.value=='')this.value='{L_SEARCH}...';" />
<input type="hidden" name="search_submit" id="search_submit_mini" value="{SEARCH}" class="submit" />
<input type="image" name="search_submit" class="search_submit" value="1" src="{PATH_TO_ROOT}/templates/{THEME}/modules/search/images/search_submit.png" />
</form>
Puis dans le fichier php correspondant j'ai rajouté le code correspondant aux champs de recherche
Code PHP :
$Template->assign_vars(array( 'TITLE_SEARCH' => TITLE, 'SEARCH' => $LANG['title_search'], 'TEXT_SEARCHED' => !empty($search) ? stripslashes(retrieve(REQUEST, 'q', '')) : $LANG['search'] . '...', 'WARNING_LENGTH_STRING_SEARCH' => addslashes($LANG['warning_length_string_searched']), 'L_SEARCH' => $LANG['search'], 'U_FORM_VALID' => url(TPL_PATH_TO_ROOT . '/search/search.php#results'), 'L_ADVANCED_SEARCH' => $LANG['advanced_search'], 'U_ADVANCED_SEARCH' => url(TPL_PATH_TO_ROOT . '/search/search.php') ));
Et tout fonctionne parfaitement pour chez moi
En espérant t'avoir aidé
Édité par Swink Le 20/01/2010 à 19h39
DaaX Membre non connecté
Booster Mortier
-
Booster Mortier
- Voir le profil du membre DaaX
- Inscrit le : 08/09/2009
- Site internet
Ben en fait, tu m'aide oui et non, pas sûr. Tu as ajouté ça dans ton fichier index.php ?
Ce qu'il faut savoir, c'est que j'ai une page personnalisée pour l'accueil qui charge l'environnement phpboost (index.php) et je veux intégrer un champ de recherche.
Je suis pas sûr que ce que tu me dis s'applique à mon cas.
Swink Membre non connecté
Booster Fuzil
-
Booster Fuzil
- Voir le profil du membre Swink
- Inscrit le : 18/04/2009
- Site internet
DaaX :
Salut Swink,
Ben en fait, tu m'aide oui et non, pas sûr. Tu as ajouté ça dans ton fichier index.php ?
Ce qu'il faut savoir, c'est que j'ai une page personnalisée pour l'accueil qui charge l'environnement phpboost (index.php) et je veux intégrer un champ de recherche.
Je suis pas sûr que ce que tu me dis s'applique à mon cas.
Ben en fait, tu m'aide oui et non, pas sûr. Tu as ajouté ça dans ton fichier index.php ?
Ce qu'il faut savoir, c'est que j'ai une page personnalisée pour l'accueil qui charge l'environnement phpboost (index.php) et je veux intégrer un champ de recherche.
Je suis pas sûr que ce que tu me dis s'applique à mon cas.
Bon pour mon cas à moi
la partie html/tpl (ci-dessus) est dans mon fichier footer.tpl
et la partie php est dans mon fichier footer.php
Si tu utilise index personnalisé tu met le code html dans le fichier .tpl qui gère l'affichage de page d'accueil (celle que tu as créer) et je suppose que tu as bien un fichier php dans le quel tu créer tes variables pour ton index ? Donc si oui tu met le code php comme le mien (par exemple) dans ce fichier là
J'ai fait aussi simplement que ça entre mes fichiers footer.tpl et footer.php
J'espère mettre mieux expliqué cette fois

Si tu encore des soucis demande j'essaierais de faire de mon mieux
DaaX Membre non connecté
Booster Mortier
-
Booster Mortier
- Voir le profil du membre DaaX
- Inscrit le : 08/09/2009
- Site internet
C'est super sympa de ta part de m'aider ainsi. Merci.
Je comprends ce que tu as fait maintenant et effectivement, c'est peut-être de cette façon qu'il faudrait que je le fasse.
J'essaye ça te je te tiens au courant.
Swink Membre non connecté
Booster Fuzil
-
Booster Fuzil
- Voir le profil du membre Swink
- Inscrit le : 18/04/2009
- Site internet
Et bon courage
DaaX Membre non connecté
Booster Mortier
-
Booster Mortier
- Voir le profil du membre DaaX
- Inscrit le : 08/09/2009
- Site internet
Bon j'ai essayé de mettre le code suggéré dans mon fichier index.php et j'ai aussi mis le code du formulaire dans le même fichier mais dans la partie html ainsi que le javascript qui va avec, mais ça ne fonctionne pas, j'obtiens une erreur 404.
Quelqu'un a une idée comment je peux faire ça ?
Merci à l'avance.
Swink Membre non connecté
Booster Fuzil
-
Booster Fuzil
- Voir le profil du membre Swink
- Inscrit le : 18/04/2009
- Site internet
DaaX :
Salut,
Bon j'ai essayé de mettre le code suggéré dans mon fichier index.php et j'ai aussi mis le code du formulaire dans le même fichier mais dans la partie html ainsi que le javascript qui va avec, mais ça ne fonctionne pas, j'obtiens une erreur 404.
Quelqu'un a une idée comment je peux faire ça ?
Merci à l'avance.
Bon j'ai essayé de mettre le code suggéré dans mon fichier index.php et j'ai aussi mis le code du formulaire dans le même fichier mais dans la partie html ainsi que le javascript qui va avec, mais ça ne fonctionne pas, j'obtiens une erreur 404.
Quelqu'un a une idée comment je peux faire ça ?
Merci à l'avance.

Salut
Quand tu dit que tu as mis le code du formulaire dans le même fichier mais dans la partie html ! Tu par de ton fichier tpl c'est bien ça ?
Si quand tu lance ta recherche et que tu tombe sur une page 404 c'est que l'adresse dans {U_FORM_VALID}
Code HTML :
<form action="{U_FORM_VALID}" onsubmit="return check_search_mini_form_post();" method="post">Est soit faux soit non chargé et donc tu doit peut-être avoir un soucis du côter php
Dans ton fichier php les codes suivant
Code PHP :
'TITLE_SEARCH' => TITLE, 'SEARCH' => $LANG['title_search'], 'TEXT_SEARCHED' => !empty($search) ? stripslashes(retrieve(REQUEST, 'q', '')) : $LANG['search'] . '...', 'WARNING_LENGTH_STRING_SEARCH' => addslashes($LANG['warning_length_string_searched']), 'L_SEARCH' => $LANG['search'], 'U_FORM_VALID' => url(TPL_PATH_TO_ROOT . '/search/search.php#results'), 'L_ADVANCED_SEARCH' => $LANG['advanced_search'], 'U_ADVANCED_SEARCH' => url(TPL_PATH_TO_ROOT . '/search/search.php')
Tu es sur que c'est bien cela ? tu ne te serais pas tromper quelque part ?
Les possibilités d'erreur il peut y'en avoir plein sans plus de détails je ne saurais t'aider.
EDIT : Je dit des bêtise même si l'adresse dans le form n'est pas chargé cela ne cause aucune erreur je repasse si je trouve quelque chose
EDIT 2 : Bon j'essaye de créer des erreurs mes aucun résultat de tye 404, une question c'est quand tu clique sur OK pour chercher le résultat que tu tombe sur l'erreur c'est bien ça ? ou je me trompe ?
EDIT 3 : Je vais y arrivé avec mes EDIT moi lol, la seul erreur que je viens de réussir à avoir c'est si il y a une erreur dans l'adresse de recherche sur la ligne
Code PHP :
'U_FORM_VALID' => url(TPL_PATH_TO_ROOT . '/search/search.php#results'),
ou peut-être dès fois que (cela m'est déjà arrivé) toujours sur la ligne du dessus remplace
Citation :
/search/search.php#results
par
Citation :
../search/search.php#results
../search/search.php#results
Ou par
Citation :
http://lenomdemonsite.com/search/search.php#results
Il m'était déjà arrivé que le / (qui signifie la racine) bogue un peut donc précise une adresse complète pour essayer
Tiens nous au courant
Édité par Swink Le 21/01/2010 à 23h28
DaaX Membre non connecté
Booster Mortier
-
Booster Mortier
- Voir le profil du membre DaaX
- Inscrit le : 08/09/2009
- Site internet
Je ne dois m'y prendre comme il le faut. Dans mon fichier index, je met la partie php et je met aussi la partie html et rien n'y fait.
Swink Membre non connecté
Booster Fuzil
-
Booster Fuzil
- Voir le profil du membre Swink
- Inscrit le : 18/04/2009
- Site internet
DaaX :
Salut Swink,
Je ne dois m'y prendre comme il le faut. Dans mon fichier index, je met la partie php et je met aussi la partie html et rien n'y fait.
Je ne dois m'y prendre comme il le faut. Dans mon fichier index, je met la partie php et je met aussi la partie html et rien n'y fait.

Pourquoi met tu ton code php et ton code html dans le même fichier (index.php) ? Phpboost est très bien fourni, tu devrais utiliser un fichier Template.
Parceque si tu met ton html directement dans le php les variable TPL que tu créer ne servent à rien (enfin je pense).
Mais j'y pense, truc à la c** est ce que en bas de ta page php tu à bien parsé tes templates ?
(Désolé pour les termes si je me trompe)
Tu devrais avoir une ligne dans le genre comme dans mon cas à moi
Code PHP :
$Template->Pparse('accueil');
EDIT : Un truc que je viens de penser qui m'étrange. Tu utilise le fichier index.php qui est à la racine du site ?
Ou c'est une page d'accueil personnalisé que tu as créer ?
Édité par Swink Le 23/01/2010 à 17h35
Visiteur
Boosteur Inactif
si il est sur tout le site, normalement en chargeant l'environnement de phpboost sa dois le charger.
DaaX Membre non connecté
Booster Mortier
-
Booster Mortier
- Voir le profil du membre DaaX
- Inscrit le : 08/09/2009
- Site internet
Swink :
EDIT : Un truc que je viens de penser qui m'étrange. Tu utilise le fichier index.php qui est à la racine du site ?
Ou c'est une page d'accueil personnalisé que tu as créer ?
EDIT : Un truc que je viens de penser qui m'étrange. Tu utilise le fichier index.php qui est à la racine du site ?
Ou c'est une page d'accueil personnalisé que tu as créer ?
Je l'utilise à la racine de mon site.
SaTurNin :
ton bloc recherche tu le met pas sur tout le site ?¿
si il est sur tout le site, normalement en chargeant l'environnement de phpboost sa dois le charger.
si il est sur tout le site, normalement en chargeant l'environnement de phpboost sa dois le charger.
Ben justement, je charge pourtant l'environnement de phpboost et le champ de recherche ne fonctionne tout de même pas.
Je n'y comprends rien...
DaaX Membre non connecté
Booster Mortier
-
Booster Mortier
- Voir le profil du membre DaaX
- Inscrit le : 08/09/2009
- Site internet
Je vous donne ce post en référence : http://www.phpboost.com/forum/topic-8661+page-d-accueil-du-site-avec-header-et-subheader-different-du-reste-du-site.php
Serait-il possible que la façon de faire dans ce post ne charge pas complètement l'environnement de phpboost ?
Je vous soumets mon fichier index.php qui se trouve à la racine :
Code PHP :
<?php //Définition de là où on se trouve par rapport à PHPBoost (ici on se trouve à la racine) define('PATH_TO_ROOT', '.'); //Début du chargement de l'environnement require_once PATH_TO_ROOT . '/kernel/begin.php'; //Titre de la page define('TITLE', 'Mandriva Linux Online - Le portail incontournable sous Mandriva Linux'); //Haut de page require_once PATH_TO_ROOT . '/kernel/header_accueil.php'; ## Début du contenu de la page ## ?> <!--C'est ici que vous devez mettre votre code--> <div id="main_content_leftbox"> <div class="topbox sep"> <a href="./news/news.php" title="MLO News"><img src="/phpboost/templates/base/theme/images/accueil_news.png" alt="MLO news" /></a> <h2><p style="margin:5px;">Toute l'actualité de Mandriva Linux et du libre</p></h2> </div> </div> <div id="main_content_centerbox"> <div class="topbox sep"> <a href="./articles/articles.php" title="Portail MLO"><img src="/phpboost/templates/base/theme/images/accueil_portail.png" alt="Portail MLO" /></a> <h2><p style="margin:5px;">Tous les tutoriaux pour prendre en main rapidement votre Mandriva Linux</p></h2> </div> </div> <div id="main_content_rightbox"> <div class="topbox"> <a href="./forum/index.php" title="Portail MLO"><img src="/phpboost/templates/base/theme/images/accueil_forum.png" alt="Portail MLO" /></a> <h2><p style="margin:5px;">Vous avez besoin d'aide ? Des questions ? Venez nous rencontrer.</p></h2> </div> </div> <?php ## Fin du contenu de la page ## //Bas de page require_once PATH_TO_ROOT . '/kernel/footer.php'; ?>
Je suis donc incapable de faire fonctionner le champ de recherche dans ma page d'accueil. Qu'est-ce que j'oublie ?
Merci d'avance.
ben.popeye Membre non connecté
-
Modérateur
- Voir le profil du membre ben.popeye
- Inscrit le : 04/08/2005
- Site internet
- Groupes :
-
Equipe Historique
Si tu veux cacher des menus (par exemple haut, droite, gauche...), c'est possible en faisant par exemple un header2.php, c'est déguelasse mais ça marche.
Mais si tu veux décider quel bloc tu veux ou pas afficher, là c'est pas possible.
Il faudra attendre la 3.1 qui permettra de configurer ça dans une interface graphique.
Un problème, une question ? Cherchez dans la FAQ ou la documentation. Si vous ne trouvez pas la réponse, demandez du support sur le forum.
Bjarne Stroustrup, inventeur du C++ :"There are two ways to write error-free programs; only the third works."
ReidLos Membre non connecté
-
Modérateur
- Voir le profil du membre ReidLos
- Inscrit le : 27/02/2009
- Site internet
- Groupes :
-
Equipe Développement
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie