Les archives de FluxBB.fr
Vous n'êtes pas identifié(e).
bonjour à tous et à toutes
- 1° Je voudrais savoir si c'est possible de mettre une couleur de fond dans le chatbox..
- 2° Mettre une couleur alternée quand on poste...
Cordialement Akira...
function j_ai_besoin() {
if (ça existe) j'utilise;
if (ça existe mais c'est incomplet) j'améliore et je partage;
if (ça n'existe pas) je développe et je partage;
if (je réclame) exit;
Return "code amélioré" or "developpeur satisfait" or die;}
Hors ligne
- 1° : Oui, rajouter un simple background-color a la class chatbox (a vérifier car je la fais tourner sur une 1.4.5 et j'ai surement fait des modifs)
#chatbox {
background-color: #la couleur voulue;
}
P.S: avec une adresse valide cela serait plus simple...
Dernière modification par Spiky (02-04-2011 08:35:26)
I don't play against a team in particular. I play to fight against the idea to lose... Life is beautiful.
Quelque #ID et beaucoup de .CLASS
Hors ligne
Aufait, existerai-il des commandes pour cette chatbox genre, un message personnel avec
(pseudo) test (/a)
ou bien /clean pour nettoyer le chat ?
Merci.
Hors ligne
Salut,
message personnel non, il faut s'orienter vers le js pour cela ... Après pour la commande clean,tu trouveras sur le forum,ça à déjà été demander.
Hors ligne
Oui j'ai vu mais je comprend pas ce qu'il faut faire avec sa:
<?php
define('PUN_ROOT', './');
require PUN_ROOT.'include/common.php';
if ($pun_user['g_id'] != PUN_ADMIN)
message('Y\'a rien à voir ici!');
$db->query('TRUNCATE '.$db->prefix.'chatbox_msg') or error('Impossible de supprimer les messages', __FILE__, __LINE__, $db->error());
header('Location: index.php');Faut-il le mettre dans un fichier nommé clean.php ?
Dernière modification par jokerz (18-05-2011 20:02:56)
Hors ligne
J'ai créé un fichié nommé "clean.php" Donc sa fonctionne mais j'aimerai savoir comme l'activer via une commande écrite sur le chat du genre:
If echo ('/clean')
header('Location: /clean.php');
Exit? Je suis vraiment null en php mais bon ...
Hors ligne
Tu écris ces lignes dans un éditeur de texte, tu enregistres sous la forme clean.php (par exemple) et tu uploades le fichier ainsi obtenu sur ton serveur.
Ensuite tu tapes dans la barre d'adresse de ton navigateur http://AdresseDeTonServeur/clean.php
Dernière modification par Wan (19-05-2011 13:59:04)
Hors ligne
Ce qu'il veut je pense,c'est qu'il n'y est uniquement les admins qui voyent ce "Clean" ... Le mieux est de ce basé sur le fichier /include/fonction.php, c'est lui qui gère ce genre de choses, tu devrais comprendre de suite 
Hors ligne
Non, tu fais un preg_match sur le message envoyé 
if(preg_match('#^\/clean$#',$le_message_envoye)){
// Tu lance ta fonction clean
}Hors ligne
Merci WinuX.
Autre chose, j'aimerai changer le "grade" des admins sur la chatbox. J'ai vu qu'il n'y avait qu'une catégorie de Administrateur, donc comment faire pour mettre un grade différent à plusieurs admins ?
Merci.
Hors ligne
Tu veux dire un titre? (le grade c'est la fonction
)
Dans ce cas (j'ai pas du tout le code sous les yeux) ca doit se passer ou s'affiche le pseudo. Il doit y avoir le titre du grade, faut le remplacer par le titre du membre qu'il faudra piocher dans une requête au préalable (là ou tu pioche le pseudo).
Si tu vois ce que j'veux dire, fais le, sinon laisses moi le temps de voir vite fait le code sources 
Hors ligne
C'est dans la chatbox.php sa non ? ou sur le forum direct.
Dernière modification par jokerz (20-05-2011 17:53:50)
Hors ligne
Chui généreux, j'ai pas testé, mais ca devrait fonctionner sans problème.
Bon dans le fichier chat.php
Ligne 258 :
Remplacer :
$messages = $db->query('SELECT u.id, u.group_id, u.num_posts_chatbox, m.id AS m_id, m.poster_id, m.poster, m.poster_ip, m.poster_email, m.message, m.posted, g.g_id, g.g_title_chatbox FROM '.$db->prefix.'chatbox_msg AS m INNER JOIN '.$db->prefix.'users AS u ON u.id=m.poster_id INNER JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id WHERE m.posted > '.$last_msg_time.' ORDER BY m.posted ASC LIMIT 0,50') or error_ajax('Unable to fetch messages', __FILE__, __LINE__, $db->error());
par :
$messages = $db->query('SELECT u.id, u.group_id, u.num_posts_chatbox, u.title, m.id AS m_id, m.poster_id, m.poster, m.poster_ip, m.poster_email, m.message, m.posted, g.g_id, g.g_title_chatbox FROM '.$db->prefix.'chatbox_msg AS m INNER JOIN '.$db->prefix.'users AS u ON u.id=m.poster_id INNER JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id WHERE m.posted > '.$last_msg_time.' ORDER BY m.posted ASC LIMIT 0,50') or error_ajax('Unable to fetch messages', __FILE__, __LINE__, $db->error());
Ligne 262 :
Remplacer :
$cur_msg_txt = $pun_config['cb_space'].$cur_msg['g_title_chatbox'].$pun_config['cb_disposition'];Par :
if(!is_null($cur_msg['title'])){
$cur_msg_txt = $pun_config['cb_space'].$cur_msg['title'].$pun_config['cb_disposition'];
}else
$cur_msg_txt = $pun_config['cb_space'].$cur_msg['g_title_chatbox'].$pun_config['cb_disposition'];Ligne 522:
Remplacer :
$result = $db->query('SELECT u.id, u.group_id, u.num_posts_chatbox, m.id AS m_id, m.poster_id, m.poster, m.poster_ip, m.poster_email, m.message, m.posted, g.g_id, g.g_title_chatbox FROM '.$db->prefix.'chatbox_msg AS m INNER JOIN '.$db->prefix.'users AS u ON u.id=m.poster_id INNER JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id ORDER BY m.posted DESC LIMIT '.$pun_config['cb_max_msg']) or error('Unable to fetch messages', __FILE__, __LINE__, $db->error());Par :
$result = $db->query('SELECT u.id, u.group_id, u.num_posts_chatbox, u.title, m.id AS m_id, m.poster_id, m.poster, m.poster_ip, m.poster_email, m.message, m.posted, g.g_id, g.g_title_chatbox FROM '.$db->prefix.'chatbox_msg AS m INNER JOIN '.$db->prefix.'users AS u ON u.id=m.poster_id INNER JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id ORDER BY m.posted DESC LIMIT '.$pun_config['cb_max_msg']) or error('Unable to fetch messages', __FILE__, __LINE__, $db->error());Ligne 532 :
Remplacer :
$cur_msg_txt = $pun_config['cb_space'].$cur_msg['g_title_chatbox'].$pun_config['cb_disposition'].$cur_msg_txt;Par :
if(!is_null($cur_msg['title'])){
$cur_msg_txt = $pun_config['cb_space'].$cur_msg['title'].$pun_config['cb_disposition'];
}else
$cur_msg_txt = $pun_config['cb_space'].$cur_msg['g_title_chatbox'].$pun_config['cb_disposition'];Vouala pour les titre des membres, si ceux ci n'en ont pas, ils auront le titre par defaut.
Pour le /clear au cas ou ca ne serait pas très bien compris (maintenant que chui parti) :
Dans le même fichier :
Ligne 203
Après :
$message = pun_linebreaks(pun_trim($_POST['req_message']));Ajouter :
if(preg_match('#^\/clean$#',$message)){
// Tu lance ta fonction clean
$db->query('DELETE FROM '.$db->prefix.'chatbox_msg');
}Ligne 434
Après :
$message = pun_linebreaks(pun_trim($_POST['req_message']));Ajouter :
if(preg_match('#^\/clean$#',$message)){
// Tu lance ta fonction clean
$db->query('DELETE FROM '.$db->prefix.'chatbox_msg');
}Vouala vouala 
Hors ligne
Merci WinuX
mais quand je remplace, les titres beug et pour la commande, sa m'affiche sa dans le chat:
Fatal error: Cannot redeclare check_cookie() (previously declared in /home/crafteve/public_html/include/functions.php:28) in /home/crafteve/public_html/include/functions.php on line 118Pourant j'ai pas touché au dossier functions . c'est normal ?
Hors ligne
Faudrait voir à la ligne 118 du function.php si la fonction est pas déclaré 2 fois (ptete une erreur de copier coller auparavant)
Pour le title qu'entends tu par "les titre bug".
Hors ligne
Bien sa passe de
Administrateur - Jokerz - .....
a
Administrateurjokerz-.......
Pour la ligne, je vais voir .
Heu, a la ligne 118 il y a sa : }
Dernière modification par jokerz (20-05-2011 18:15:47)
Hors ligne
Ma modification ne comprends pas la couleur des grades.
Etant donné que la mod color groups n'est pas d'origine.
Mais si tu veux, j'peux te le faire 
Sinon il suffit d'ajouter un espace.
Pour la ligne 118 fait ctrl F et recherche : function check_cookie(
Si tu as 2 fois cette fonction, il va falloir en effacer une.
Hors ligne
J'ai qu'un
function check_cookie( Je suis revenu en arrière et recommencé, voilà ce qui apprait maintenant,
Parse error: syntax error, unexpected $end in /home/crafteve/public_html/chatbox.php on line 193et à la ligne 193, il y a :
$result = $db->query('SELECT username FROM '.$db->prefix.'users WHERE username=\''.$db->escape($username).'\' OR username=\''.$db->escape(preg_replace('/[^\w]/', '', $username)).'\'') or error_ajax('Unable to fetch user info', __FILE__, __LINE__, $db->error());Bizare, je fait deux fois la même manip, deux messages d'erreurs différents.
et une autre :
Parse error: syntax error, unexpected T_VARIABLE in /home/crafteve/public_html/chatbox.php on line 272avec en ligne 272:
$last_msg_time = intval($cur_msg['posted']);Dernière modification par jokerz (20-05-2011 18:23:46)
Hors ligne
Avec la couleur des grades :
Dans le fichier chat.php
Ligne 258 :
Remplacer :
$messages = $db->query('SELECT u.id, u.group_id, u.num_posts_chatbox, m.id AS m_id, m.poster_id, m.poster, m.poster_ip, m.poster_email, m.message, m.posted, g.g_id, g.g_title_chatbox FROM '.$db->prefix.'chatbox_msg AS m INNER JOIN '.$db->prefix.'users AS u ON u.id=m.poster_id INNER JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id WHERE m.posted > '.$last_msg_time.' ORDER BY m.posted ASC LIMIT 0,50') or error_ajax('Unable to fetch messages', __FILE__, __LINE__, $db->error());
par :
$messages = $db->query('SELECT u.id, u.group_id, u.num_posts_chatbox, u.title, m.id AS m_id, m.poster_id, m.poster, m.poster_ip, m.poster_email, m.message, m.posted, g.g_id, g.g_color, g.g_title_chatbox FROM '.$db->prefix.'chatbox_msg AS m INNER JOIN '.$db->prefix.'users AS u ON u.id=m.poster_id INNER JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id WHERE m.posted > '.$last_msg_time.' ORDER BY m.posted ASC LIMIT 0,50') or error_ajax('Unable to fetch messages', __FILE__, __LINE__, $db->error());
Ligne 262 :
Remplacer :
$cur_msg_txt = $pun_config['cb_space'].$cur_msg['g_title_chatbox'].$pun_config['cb_disposition'];Par :
if(!is_null($cur_msg['title'])){
$title = '<strong><span style="color:'.$cur_msg['g_color'].'">['.$cur_msg['title'].']</span></strong>';
$cur_msg_txt = $pun_config['cb_space'].$title.$pun_config['cb_disposition'];
}else
$cur_msg_txt = $pun_config['cb_space'].$cur_msg['g_title_chatbox'].$pun_config['cb_disposition'];Ligne 522:
Remplacer :
$result = $db->query('SELECT u.id, u.group_id, u.num_posts_chatbox, m.id AS m_id, m.poster_id, m.poster, m.poster_ip, m.poster_email, m.message, m.posted, g.g_id, g.g_title_chatbox FROM '.$db->prefix.'chatbox_msg AS m INNER JOIN '.$db->prefix.'users AS u ON u.id=m.poster_id INNER JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id ORDER BY m.posted DESC LIMIT '.$pun_config['cb_max_msg']) or error('Unable to fetch messages', __FILE__, __LINE__, $db->error());Par :
$result = $db->query('SELECT u.id, u.group_id, u.num_posts_chatbox, u.title, m.id AS m_id, m.poster_id, m.poster, m.poster_ip, m.poster_email, m.message, m.posted, g.g_id, g.g_color, g.g_title_chatbox FROM '.$db->prefix.'chatbox_msg AS m INNER JOIN '.$db->prefix.'users AS u ON u.id=m.poster_id INNER JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id ORDER BY m.posted DESC LIMIT '.$pun_config['cb_max_msg']) or error('Unable to fetch messages', __FILE__, __LINE__, $db->error());Ligne 532 :
Remplacer :
$cur_msg_txt = $pun_config['cb_space'].$cur_msg['g_title_chatbox'].$pun_config['cb_disposition'].$cur_msg_txt;Par :
if(!is_null($cur_msg['title'])){
$title = '<strong><span style="color:'.$cur_msg['g_color'].'">['.$cur_msg['title'].']</span></strong>';
$cur_msg_txt = $pun_config['cb_space'].$title.$pun_config['cb_disposition'];
}else
$cur_msg_txt = $pun_config['cb_space'].$cur_msg['g_title_chatbox'].$pun_config['cb_disposition'];Pour le probleme de function.php, j'pense qu'il doit y avoir une fonction mal fermé.
Reprends les fichiers originaux. Si ca bug toujours alors je sais pas du tout .. 
Dernière modification par WinuX (20-05-2011 18:33:37)
Hors ligne
Merci mais maintenant, sa me donne sa :
Une erreur s'est produite
Fichier: / home / crafteve / public_html / chatbox.php
Ligne: 591
FluxBB déclaré : Impossible de récupérer les messages
Base de données a rapporté: Vous avez une erreur dans votre syntaxe SQL; vérifier le manuel qui correspond à votre version du serveur MySQL pour le droit d'utiliser la syntaxe près de INTÉRIEUR: JOIN crafteve_users AS u 'O à la ligne 1 (Errno 1064. g_title_chatbox DE crafteve_chatbox_msg AS m )pourtant j'ai fait ce que tu as dit.
et en ligne 591:
$result = $db->query('SELECT u.id, u.group_id, u.num_posts_chatbox, u.title, m.id AS m_id, m.poster_id, m.poster, m.poster_ip, m.poster_email, m.message, m.posted, g.g_id, g.g_color g.g_title_chatbox FROM '.$db->prefix.'chatbox_msg AS m INNER JOIN '.$db->prefix.'users AS u ON u.id=m.poster_id INNER JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id ORDER BY m.posted DESC LIMIT '.$pun_config['cb_max_msg']) or error('Unable to fetch messages', __FILE__, __LINE__, $db->error());
Dernière modification par jokerz (20-05-2011 18:31:46)
Hors ligne
euh désolé je corrige, il manque une virgule apres le g.g_color
Hors ligne
Parfait merci, tout marche .
Mais j'aimerai savoir comment faire avec la commande clear.
Je dois faire :
$message = pun_linebreaks(pun_trim($_POST['req_message']));
if(preg_match('#^\/clean$#',$message)){
// Tu lance ta fonction clean (jécris ma fonction la ? )
$db->query('DELETE FROM '.$db->prefix.'chatbox_msg');
}sa a la ligne 203 et 434 ?
Hors ligne
Oui. En gros ca va analyser le message posté sur la chatbox.
Si ca contient /clear ca effacera tous les post dans la bdd.
Et non pas besoin d'écrire la fonction
, la ya tout le code. (oui c'est court, mais pas besoin de plus de code)
Hors ligne
Oui. En gros ca va analyser le message posté sur la chatbox.
Si ca contient /clear ca effacera tous les post dans la bdd.Et non pas besoin d'écrire la fonction
, la ya tout le code. (oui c'est court, mais pas besoin de plus de code)
"Si ca contient clear " Késako.
Je dois rajouter du genre
If $define ("/clear")
// la suite .....?
Hors ligne
@jokerz : c'était juste un 'mistaping' de Winux plus haut, il voulait dire "/clean".
Et il ESSAYAIT (gentiment) DE T'EXPLIQUER ce que faisait le code en question.
Tu ne peux PAS faire de modifs sur ton forum SI tu ne COMPRENDS pas ce que tu fais.
Donc :
- soit tu apprends (avec l'aide ici, comme celle de WinuX, ET avec de nombreux tutoriaux disponibles sur le Net, voire en achetant un livre de base sur le PHP).
- soit tu continues à demander de l'aide sans aucun effort, et ça sera mal vu…
- soit tu abandonnes.
(note : je n'ai rien contre toi, ni contre les autres débutants, mais il y a certains messages qui m'énervent, désolé…).
Hors ligne