Les archives de FluxBB.fr
Vous n'êtes pas identifié(e).
salut tout le monde
Bon voilà le problème du jour...
Maintenant que mon forums est entièrement à la racine de mon serveur tout va mieux mais sur ma page accueil je voulais afficher les 10-15 derniers sujet créer sur le forums pour avoir une vue direct donc avec le fichier extern.php donc voilà ce que j'ai écrit
<?php include('extern.php?action=active'); ?>
Et voilà ce qu'il me sort dès que j'actualise ma page index.php
Warning: include(extern.php?action=active) [function.include]: failed to open stream: No such file or directory in F:\wamp\www\index.php on line 83
Warning: include() [function.include]: Failed opening 'extern.php?action=active' for inclusion (include_path='.;C:\php5\pear') in F:\wamp\www\index.php on line 83
Pourtant mon fichier extern.php est à la même hauteur que les autres et qu'index.php tout est bon mais il continue de m'écrire ça.
Quelqu'un aurait une idée ou pas ?
Merci d'avance.
@+
Hors ligne
Dîtes personnes ne peut m'aider ?
Je me disais le problème ne viendrait tout simplement pas du fait que le forums est à même la racine donc le fichier extern.php aussi ? Par hasard ou c'est jamais.
J'essaye de puis deux bonne heure tout les solutions proposé dans toutes les archives du forums mais toujours rien
Qui sera mon héro ?
merci
Hors ligne
Bonjour,
PHP a tout-à-fait raison, il n'existe pas de fichier 'extern.php?action=active'
Tu peux inclure qu'un fichier qui existe réellement.
Ce n'est pas parce que l'erreur se propage qu'elle devient vérité. Gandhi
Sont différents : ça et sa - est et ait - à et a - ce et se - mes et mais ou met - été et était - c'est et ces - ce-si et ceci
La vie sans musique est tout simplement une erreur, une fatigue, un exil. Friedrich Nietzsche
Hors ligne
Salut, merci de ta réponse mais bon c'est un peut ""débile"" si je puis dire car dans l'aide du site et dans la section Syndication qui traite de ce sujet là voilà le code qui demande mettre
<?php include('http://www.domaine.ltd/forums/extern.php?action=active'); ?>
et perso que je mette avec les http ou non cela reviens toujours au même résultat donc c'est le docu sur la syndication qui est faux ou bien c'est moi qui me trompe ?
Je ne sais pas et je sèche grave
Hors ligne
Si tu fais une recherche, tu verras qu'il y a eu plusieurs discussions sur ce sujet..
En gros, extern.php n'est pas destiné à être inclu dans une page de ton forum, mais à fournir un flux rss à l'extérieur. Comme il y a AUSSI la possibilité d'avoir une sortie en html, on peut être tenté de l'utiliser comme include, et dans certains cas, ça marche à peu près, mais cela dépend de l'hébergeur...
Donc, le mieux, c'est de refaire directement la requête dans la page où tu veux l'affichage (en s'inspirant du code de extern).
Life is a struggle, programming is a suffer.
Hors ligne
Ok d'accord je me pencherais là dessus. merci
Bye
Hors ligne
Bonjour,
Ma remarque n'a rien de débile, comme tu dis.
Il faut savoir faire la différence entre l'inclusion d'un fichier et celle d'une url :
Si les gestionnaires d'URL sont activés dans PHP, on pourra inclure une URL, via HTTP, au lieu d'un simple chemin local et, dans ce cas, des variables peuvent être transmises au serveur l'URL avec la méthode GET. Ce n'est pas la même chose que d'hériter du contexte des variables par l'inclusion d'un fichier : include('mon_fichier.php?var=12');
ne fonctionnera pas car le script recherchera un fichier nommé "mon_fichier.php?var=12".
Ce n'est pas parce que l'erreur se propage qu'elle devient vérité. Gandhi
Sont différents : ça et sa - est et ait - à et a - ce et se - mes et mais ou met - été et était - c'est et ces - ce-si et ceci
La vie sans musique est tout simplement une erreur, une fatigue, un exil. Friedrich Nietzsche
Hors ligne
Bonjour tout le monde,
Oui merci maintenant je comprend mieux certains point notament le dit gestionnaire d'URL que tu parle. Sinon ce n'est pas ta façon de m'expliquer qui est débile désolé si tu as cru ça mais c'était plus pour parler de ce qui est marquer dans la syndication, je ne te critique pas.
JE vais farfouiller de ce côter voir ce qu'il en est Merci à tous
Hors ligne
Bonjour,
Si tu as trouvé une solution, ça m'interesse.
En intégrant la ligne de code, j'obtient 3 messages d'erreurs :
- Warning: include() [function.include]: URL file-access is disabled in the server configuration in xxxxx on line 12
- Warning: include(http://www.quelquepartsurlenet.com/tablesdolonne/fluxBB/extern.php?action=active) [function.include]: failed to open stream: no suitable wrapper could be found in xxxxx on line 12
Warning: include() [function.include]: Failed opening 'http://www.quelquepartsurlenet.com/tabl … ion=active' for inclusion (include_path='.:/usr/local/lib/php') in xxxxx on line 12
La premiere erreur me demanderait d'aller modifier le php.ini ??? (je suis chez OVH).
Help svp
Hors ligne
pas trouvé avec ce chemin. J'ai envoyé un mail pour demander.
merci de ta réponse rapide.
Hors ligne
Tout à fait j'ai éssayer ce que tu dit et moi aussi ils sont désactivé donc j'ai modifier les paramètres dans wamp pour que allow_url_include soit activé et c'est toutjours le même problèmes
Toutjours les mêmes erreurs.
Hors ligne
Oui le serveurs à été relancer donc le problème viens d'ailleurs
Heu oui je sais mais vue que tu as demandé de regarder les résultat à agony j'ai fait de même et j'ai modifier les infos pour essayer donc pour ça que je post
Hors ligne
non je n'ai pas encore eu le temps de commencer, plutôt que de buter là dessus et de perdre du temps je préfère me concentrer sur ce qui me reste à intégrer au site et aussi au modification comme le mod de prévisu que je me prend la tête à faire avec Jquery après je m'occuperais de ce problème là.
Hors ligne
Ayez j'ai trouvé pour afficher les derniers sujet du forum sur le site (il n'affiche que les noms avec liens mais pas de description).
Le system est plus radical car je passe par la bdd mais au final ça marche. Une fois le code nettoyer je le posterais, donc dans le journée de samedi.
EDIT : Sinon question à part au niveau design. Quand ont ont lit un post le cadre est séparer en deux. A gauche la colonne d'informations sur le membre et à droite l'emplacement pour le message. Vous voyez ? He bien cette emplacement pour le message comment ont régle ça largeur ainsi que celle de la collone pour l'info du membre ? Si quelqu'un aurait la réponse je serais content car impossible de mettre la main sur le bout de code qui gère ça ....
MErci
Dernière modification par Swink (29-08-2009 05:26:00)
Hors ligne
C'est dans les CSS qu'il faut regarder
Hors ligne
@swink : j'ai hâte d'avoir ta réponse et celle d'OVH
Hors ligne
Salut tout le monde,
thepath: Je peut dire que j'ai retourné les css sans rien trouvé, je suis assez étonné d'ailleurs de ne pas avoir trouver dedans.
Sinon ayé j'ai fini de nettoyer le code, j'en est profiter pour vous mettre des commentaires sur les choses importantes. à vous de le remplir comme vous voulez.
Bon dans un premier créer un nouveau fichier.php dans le dossier include de votre forum et nommer le inc_forums.php puis ouvrez le et coller le code qui suit dedans :
<?php
//error_reporting(0);
//---- Début de la Maj du cache -------------
define('CACHE_TIME',800); // 800 est le laps de temps que met le cache à se régénérer à vous de le mettre comme vous le voulez
if(!file_exists("cache/inc_forums.php")) // ICI modifier l'emplacement de votre dossier cache (par défault il est dans [dossier votre forum] - [cache])
$writecache=1;
elseif (($time = filemtime("cache/inc_forums.php")) && ((time() - $time) > CACHE_TIME)) // ICI modifier l'emplacement de votre dossier cache (par défault il est dans [dossier votre forum] - [cache])
$writecache=1;
else
$writecache=0;
if($writecache==1) {
//---- Début de la connection à la base de donnée -------------
$xmess = 10; // Régler ici le nombres de messages que vous voulez récupérer
$mesforum= '<div id="menuforum">';
$mesforum .="<ul>";
$INFO['sql_database'] = 'zdl_forum'; // Entrer le nom de votre bas de donnée
$INFO['sql_host'] = 'localhost'; // Entrer le nom de serveur
$INFO['sql_pass'] = ''; // Entrer le mot de passe d'accès à votre serveur
$INFO['sql_tbl_prefix'] = 'punbb_'; // Entrer le nom du prefix donner à vos tables
$INFO['sql_user'] = 'root'; // Entrer votre login d'accès à votre serveur
$link2 = mysql_connect($INFO['sql_host'],$INFO['sql_user'],$INFO['sql_pass']);
mysql_select_db($INFO['sql_database']);
$req = "select id, subject, last_post FROM ".$INFO['sql_tbl_prefix']."topics where moved_to IS NULL order by last_post desc limit $xmess";
$result=mysql_query($req, $link2);
while ($dernier2=mysql_fetch_object($result)) {
//---- Fin de la connection à la base de donnée -------------
$datepub = date('d/m', $dernier2->last_post);
$nbcaract = strlen($dernier2->subject);
// fonction couper si titre trop long
$max=40; // Régler ici le nombre de caractères max que vous voulez afficher
if(strlen($dernier2->subject)>=$max){
$dernier2->subject =substr($dernier2->subject,0,$max);
$espace=strrpos($dernier2->subject," ");
$dernier2->subject=substr($dernier2->subject,0,$espace)."...";
}
// fonction couper si titre trop long
$dernier2->subject = strtolower($dernier2->subject);
$url = 'viewtopic.php?id='.$dernier2->id.''; // ICI modifier le chemin d'accès vers votre fichier viextopic.php (par défault il est dans [dossier votre forum] - viextopic.php)
$mesforum .= '<a href='.$url.'>'.$dernier2->subject.'</a><br>'; // Vous pouvez rajouter ici la forme de présentation (ex : <li><ul>...)
}
$mesforum .="</ul></div><br>";
$Fnm = ("cache/inc_forums.php"); // ICI modifier l'emplacement de votre dossier cache (par défault il est dans [dossier votre forum] - [cache])
//chmod ("$Fnm",0666);
$inF = fopen($Fnm,"w"); // Lecture et écriture
fputs($inF,$mesforum."");
//Enfin fermer le fichier
//chmod ("$Fnm",0644);
fclose($inF);
//---- Fin de la Maj du cache -------------
mysql_close();
}
$mesforum1 = implode ('', file ('cache/inc_forums.php')); // ICI modifier l'emplacement de votre dossier cache (par défault il est dans [dossier votre forum] - [cache])
echo $mesforum1;
?>
Sauvegarder votre fichier et envoyer le sur le serveur sauf si vous êtes en local comme moi . Maintenant prenon une page comme par exemple l'index de votre site chercher l'endroit où vous voulez voir apparaître le résultat et coller le code suivant :
<?php include("include/inc_forums.php"); ?>
Sinon dans le code avant de le lancer vérifier bien que les 4 lignes suivantes sont bien renseigner :
if(!file_exists("cache/inc_forums.php"))
elseif (($time = filemtime("cache/inc_forums.php")) && ((time() - $time) > CACHE_TIME))
$Fnm = ("cache/inc_forums.php");
$mesforum1 = implode ('', file ('cache/inc_forums.php'));
Elles sont importantes car elle indique l'emplacement du fichier inc_forums.php qui sera mis en cache et qui en fait sera lu et afficher sur votre page.
Donc vérifier bien toute les informations avant de le lancer. Je ne sais pas trop ce que cela donne sur un serveur web mais en local ça fonctionne parfaitement.
J'attend vos avis et questions.
Bye
Hors ligne
T'as essayé ?
Parce que je pense que çà ne doit pas bien fonctionner, en local et pire encore sur un serveur distant
Hors ligne
Perso chez cela fonctionne nickel chrome sur mon accueil maintenant j'ai les 10 derniers post du forums, y'a aucun soucis
Hors ligne
Bonjour,
elseif (($time = filemtime("cache/inc_forums.php")) && ((time() - $time) > CACHE_TIME))
M'étonnerais bien que ça fonctionne... à moins qu'il y ait une faute de frappe
Ce n'est pas parce que l'erreur se propage qu'elle devient vérité. Gandhi
Sont différents : ça et sa - est et ait - à et a - ce et se - mes et mais ou met - été et était - c'est et ces - ce-si et ceci
La vie sans musique est tout simplement une erreur, une fatigue, un exil. Friedrich Nietzsche
Hors ligne
Arf dit moi tu la voi où la faute tiendez une screen de mon accueil avec les derniers post
Essayer le d'abord mais je serais curieux de voir quel erreur tu remarque Otomatic
EDIT :
Les quatres bout de code spécifiant l'endroit du cache que j'ai afficher au dessus je les est copier en vite fait alors oui pas impossible qu'il y'est une erreur mais po chez moi
Dernière modification par Swink (29-08-2009 15:54:45)
Hors ligne
Et avec çà :
$INFO['sql_database'] = 'zdl_forum'; // Entrer le nom de votre bas de donnée
$INFO['sql_host'] = 'localhost'; // Entrer le nom de serveur
$INFO['sql_pass'] = ''; // Entrer le mot de passe d'accès à votre serveur
$INFO['sql_tbl_prefix'] = 'punbb_'; // Entrer le nom du prefix donner à vos tables
$INFO['sql_user'] = 'root';
Cà marche peut être sur WAMP, mais en ligne, c'est loin d'être évident
Hors ligne