austin powers Posté 27 Novembre 2005 Posté 27 Novembre 2005 Bonjour je voudrais mettre sur la page d'accueil de mon site le nombre de connectés sur le forum. Existe il un script pour ça?
hcplayer Posté 27 Novembre 2005 Posté 27 Novembre 2005 Selectionne dans phpbb_sessions (je ne sais pas si ça fonctionne mais je pense) $re = mysql_query("SELECT count(session_id) FROM phpbb_sessions WHERE UNIX_TIMESTAMP() BETWEEN session_start AND (session_start+(60*15))");$r = mysql_fetch_assoc($re);//nombre de connectés :print($r[0]); 60*15 dans la requête -> les 15 dernières minutes, en théorie ca doit fonctionner
austin powers Posté 28 Novembre 2005 Auteur Posté 28 Novembre 2005 merci de ta reponse je ne comprend pas je doit coller se code sur la page d'accueil de mon site? parce que sinon en editant le fichier session.php je ne retrouve pas ce code
Dudu Posté 28 Novembre 2005 Posté 28 Novembre 2005 parce que sinon en editant le fichier session.php je ne retrouve pas ce code Qui a parlé du fichier session.php ? hcplayer te dit de sélectionner ce que tu cherches dans la table "phpbb_sessions" de ta base de données SQL
austin powers Posté 28 Novembre 2005 Auteur Posté 28 Novembre 2005 desolé pour ma betise mais quelle est la procedure exacte a suivre??? On est bien d'accord que je veux mettre sur la page d'index du site le nombres de connéctés sur le forum qui est dans un autre dossier?? Doit je coller le script sur la page d'accueil du site???
hcplayer Posté 28 Novembre 2005 Posté 28 Novembre 2005 $database = ""; //base sur laquelle il y a phpbbmysql_select_db("");$re = mysql_query("SELECT count(session_id) FROM phpbb_sessions WHERE UNIX_TIMESTAMP() BETWEEN session_start AND (session_start+(60*15))");$r = mysql_fetch_assoc($re); Ceci ou tu as l'habitude de placer tes requetes, si tu as plusieurs base, selectionne la bonne. Ensuite : Il y a actuellement <? print($r[0]); ?> connecté sur le forum la ou tu souhaite le mettre
austin powers Posté 28 Novembre 2005 Auteur Posté 28 Novembre 2005 (modifié) J'ai un petit probleme c'est que quand je tape ma requête j'ai ce message Vous devez choisir au moins une colonne à afficher Modifié 28 Novembre 2005 par austin powers
austin powers Posté 28 Novembre 2005 Auteur Posté 28 Novembre 2005 non ça y est j'ai executer la requete mais ça ne marche pas je rapelle que l'index du site n'est pas dans le même dossier que le forum ça viendrais pas de la?
hcplayer Posté 28 Novembre 2005 Posté 28 Novembre 2005 non c'est une requete, ça n'a rien à voir avec l'arbo de ton site.
austin powers Posté 28 Novembre 2005 Auteur Posté 28 Novembre 2005 ben alors ou est le probleme,j'ai fait cette requete $database = ""; //base sur laquelle il y a phpbb(ici j'ai mis le nom d'user)mysql_select_db("ici j'ai mis le nom de la bdd");$re = mysql_query("SELECT count(session_id) FROM phpbb_sessions WHERE UNIX_TIMESTAMP() BETWEEN session_start AND (session_start+(60*15))");$r = mysql_fetch_assoc($re);
hcplayer Posté 28 Novembre 2005 Posté 28 Novembre 2005 (modifié) fait : $re = mysql_query("SELECT count(session_id) FROM phpbb_sessions WHERE UNIX_TIMESTAMP() BETWEEN session_start AND (session_start+(60*15))") or die(mysql_error()); et donne nous le message, car la requête fonctionne très bine chez moi. ce n'est pas le nom d'user qu'il faut mettre, c'est le nom de ta base, celui que tu as choisi, quand tu as installé ton forum Modifié 28 Novembre 2005 par hcplayer
austin powers Posté 29 Novembre 2005 Auteur Posté 29 Novembre 2005 Salut j'ai effectué la requête et ça ne marche toujours pas. mysql_select_db("???????????"); que doit je mettre entre les 2 parentheses
Dan Posté 29 Novembre 2005 Posté 29 Novembre 2005 Il y a lorsqu'on s'attaque à la programmation un minimum d'effort à faire. Tu es le seul à pouvoir répondre à cette question parce qu'il s'agit du nom de TA base de données. C'est donc toi seul qui peux le connaître. Merci aussi de prendre la peine de lire la documentation, cela évitera pas mal de questions inutiles. Dan
austin powers Posté 29 Novembre 2005 Auteur Posté 29 Novembre 2005 En fait je pense qu'on c'est mal compris j'explique $database = "[b]ici j'ai mis le nom de la bdd du forum[/b]"; mysql_select_db("[b]ici je met quoi?? [/b]");$re = mysql_query("SELECT count(session_id) FROM phpbb_sessions WHERE UNIX_TIMESTAMP() BETWEEN session_start AND (session_start+(60*15))");$r = mysql_fetch_assoc($re); Merci de vos reponse et desolé si ça a l'air simple mais moi j'ai du mal
Anonymus Posté 29 Novembre 2005 Posté 29 Novembre 2005 mysql_select_db(PHP 3, PHP 4 , PHP 5) mysql_select_db -- Sélectionne une base de données MySQL Description bool mysql_select_db ( string database_name [, resource link_identifier]) $database = "ici j'ai mis le nom de la bdd du forum"; Donc oui, il te faut mettre : mysql_select_db($database);
austin powers Posté 29 Novembre 2005 Auteur Posté 29 Novembre 2005 Désolé de la reponse tardive,j'etais au boulot je viens de rentrer ça ne marche toujours pas ,alors peut etre que je n'ai rien compris je colle le code que je met ce sera plus facile pour vous de detecter l'erreur $database = "xxxxxxxxxxx"; mysql_select_db($database);$re = mysql_query("SELECT count(session_id) FROM phpbb_sessions WHERE UNIX_TIMESTAMP() BETWEEN session_start AND (session_start+(60*15))");$r = mysql_fetch_assoc($re);
Anonymus Posté 30 Novembre 2005 Posté 30 Novembre 2005 $database = "xxxxxxxxx"; mysql_select_db($database);$re = mysql_query("SELECT count(session_id) FROM phpbb_sessions WHERE UNIX_TIMESTAMP() BETWEEN session_start AND (session_start+(60*15))");$r = mysql_fetch_assoc($re); Essaies de coller la requète dans phpmyadmin. Pour cela, tu remplaces les lignes ci-dessus par ceci : $database = "xxxxxxxxx"; mysql_select_db($database);$query= "SELECT count(session_id) FROM phpbb_sessions WHERE UNIX_TIMESTAMP() BETWEEN session_start AND (session_start+(60*15))";$re = mysql_query($query);echo"<p>".$query."<p>";echo"<p>".$re."<p>";$r = mysql_fetch_assoc($re); echo"<p>".$r."<p>";die(""); Profites de l'occasion pour nous poster l'erreur exacte renvoyée par ces lignes. N'oublies pas de modifier le nom de la base de données. J'ai édité ton post, il ne sert à rien (dans ce cas) d'afficher le nom de ta base ps : Je ne connais pas les forums phpbb, mais s'il n'y a pas de champs session_start, il est 'normal' que ca ne marche. S'il y a un champ 'session_start', il n'est pas vraiment normal qu'ils donnent le nom d'une fonction php pour servir de nom de champ..
austin powers Posté 30 Novembre 2005 Auteur Posté 30 Novembre 2005 Salut je tape la requête dans ma base de donnée et même dans sessions phpbb et il ne e passe rien en fait on dirais que ça a marché et quand je regarde l'index sur le site ça ne fonctionne pas
lafosca Posté 30 Novembre 2005 Posté 30 Novembre 2005 Tu devrais pas mettre une connexion à ta base ? Au cas ou le script aurrais cloturé cette connexion précédement ?
hcplayer Posté 30 Novembre 2005 Posté 30 Novembre 2005 Lafosca doit avoir raison, il faut te connecter à ta base avant si ce n'est pas fait : mysql_connect("xxx","xxx","xxx"); Ensuite après vérification plus avant, je te reconfirme que la requête fonctionne, et que le chiffre correspond avec les utilisateurs en ligne donnés en bas de phpbb, donc ça marche. Je te recommande la lecture http://www.phpdebutant.org , utiliser des scripts comme phpbb c'est bien, mais dès qu'on veut un truc un peu perso, il faut s'investir un peu plus en programmation
austin powers Posté 30 Novembre 2005 Auteur Posté 30 Novembre 2005 Salut merci pour le lien j'ai donc mis ce code dans la page d'accueil mysql_connect("xxx","xxx","xxx"); et la j'ai ce message d'erreur Warning: mysql_connect(): Unknown MySQL Server Host '*****' (0) in /home/www/pcparadise/www/index.php on line 1046
hcplayer Posté 30 Novembre 2005 Posté 30 Novembre 2005 (modifié) tu t'es trompé dasn l'adresse de ton host comme le signifie le message d'erreur. Modifié 30 Novembre 2005 par hcplayer
austin powers Posté 30 Novembre 2005 Auteur Posté 30 Novembre 2005 Donc je doit mettre? mysql_connect("mysql.4.celeonet.fr","mot de passe","nom de la bdd"); c'est ça?
Anonymus Posté 30 Novembre 2005 Posté 30 Novembre 2005 mysql_connect("HOST","LOGIN","PASS"); Ca donnera donc : mysql_connect("mysql.4.celeonet.fr","ton login","mot de passe");
austin powers Posté 30 Novembre 2005 Auteur Posté 30 Novembre 2005 je commence a avoir un coup de pompe moi meme message d'erreur...pourtant tout est bon Warning: mysql_connect(): Unknown MySQL Server Host 'mysql.4.celeonet.fr' (0) in /home/www/pcparadise/www/index.php on line 1046
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant