Aller au contenu

Sujets conseillés

Posté

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

Posté
parce que sinon en editant le fichier session.php je ne retrouve pas ce code  :blink:

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 ;)

Posté

desolé pour ma betise :blush: 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??? :wacko:

Posté

$database = ""; //base sur laquelle il y a phpbb
mysql_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 :)

Posté (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 :huh:

Modifié par austin powers
Posté

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);

Posté (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é par hcplayer
Posté

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

Posté

En fait je pense qu'on c'est mal compris :hypocrite:

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 :whistling:

Posté
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);

Posté

Désolé de la reponse tardive,j'etais au boulot je viens de rentrer :D

ça ne marche toujours pas ,alors peut etre que je n'ai rien compris :nono:

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);

Posté

$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..

Posté

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 :gueule:

Posté

Tu devrais pas mettre une connexion à ta base ?

Au cas ou le script aurrais cloturé cette connexion précédement ?

Posté

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 ;)

Posté

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

Posté

mysql_connect("HOST","LOGIN","PASS");

Ca donnera donc :

mysql_connect("mysql.4.celeonet.fr","ton login","mot de passe");

Posté

je commence a avoir un coup de pompe moi :boude:

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

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...