logo

NPDS : Gestion de contenu et de communauté


Content & Community Management System (CCMS) robuste, sécurisé, complet, performant, parlant vraiment français, libre (Open-Source) et gratuit.
29 visiteur(s) et 0 membre(s) en ligne.
Activité du Site

Pages vues depuis 25/05/2001 : 106 255 848

  • Nb. de membres 8 692
  • Nb. d'articles 1 695
  • Nb. de forums 26
  • Nb. de sujets 8
  • Nb. de critiques 92

Top 10  Statistiques

Index du forum »»  Questions »» chat

Nouveau sujet
 chat#26844Répondre

3Contributeur(s)
Jireckjpbnicolas2
3 Modérateur(s)
developpeurjpbJireck
Jireck Jireckicon_post
juste parce que j'ai la memoire qui defaille

on ne peux pas chatter entre deux personnes ?

si oui comment ?
jpb jpbicon_post
la seule solution que je vois un groupe de deux personnes ...
Jireck Jireckicon_post
c'est pas une solution puisque sinon faut x groupes par couple possible de membre
jpb jpbicon_post
oui ...
Jireck Jireckicon_post
je vais me pencher dessus
Jireck Jireckicon_post
en fait c'est juste une question de gestion de l'id.

il faut en fait etendre ce champs a un char pour pouvoir le checker
plusieurs cas :
commence par - check des autorisations
commence par un N° il faut checker l'id dans le couple

l'id de conversation serait composer de uid1-uid2

Voila l'idée
en pensez vous quoi ?
jpb jpbicon_post
toucher à la gestion de l'id du chat va te forcer a presque tout réécrire ... à mon avis pas simple du tout !

je reviens à l'idée d'un groupe de 2 :
un url (y demande un chat privé avec x) qui appel une fonction qui crée un groupe et ouvre le chat quand le chat est terminé le groupe est détruit le chat effacé ... (une des limites le nombre de groupe disponible simultanément ....)
Jireck Jireckicon_post
et si on fait cela en supposant $id n'est pas INT mais un char10 (par exemple) dans chatrafraich.php :


function check_id(string $chaine): array
{
        global $user;
    // Vérifie si la chaîne est du style NOMBRE-NOMBRE.
    if (count(str_split($chaine, "-")) == 2 && is_numeric(explode("-", $chaine)[0]) && is_numeric(explode("-", $chaine)[1])) {
        // La chaîne est du style NOMBRE-NOMBRE.
        $userid = explode("-", $chaine);
        $cookie=cookiedecode($user);
        if ($cookie[1] !== $userid[0] || $cookie[1] !== $userid[0]){
            die();
        }
    }

    // Vérifie si la chaîne est un nombre compris entre -127 et 126.
    if (is_numeric($chaine) && abs($chaine) <= 126) {
        // La chaîne est un nombre compris entre -127 et 126.
        if (!autorisation($chaine)) die();
    }

    die();
}
    check_id($id); 



jpb jpbicon_post
A on avis si tu pars dans cette direction non il faut garder int ... soit signed pour permettre les valeurs négatives ( soit unsigned que positive)
et ensuite tes controles if($x<0)....
jpb jpbicon_post
avec comme limite le -127 ... qui est spécifique à l'autorisation admin ....
Jireck Jireckicon_post
c'est exactement ce que je fais.

Je vérifie :
si c'est un couple iduser separé par un tiret si oui je check si tu es bien un des users
sinon je verifie que c'est un INT et je fais un autorisation comme de base

et si rien je die

Je ne vois pas ou il y aurait un probleme ...
Ou je ne le vois pas....
c'est le meme check de base si c'est int
Jireck Jireckicon_post
juste pour savoir si le systeme de chat convient a tout le monde ou si une update du systeme de chat tel que je le propose ou mieux ne serait pas une belle amélioration?

parce que si ca convient a 90% des personnes, je clos le sujet.
Jireck Jireckicon_post
je viens de regarde la table chatbox. et j'ai regardé les fichiers.

Il est effectivement dure de modifié l'id, mais en regardant la structure de la table, je me suis dit qu'avec un champs de plus on pourrait déterminer si c'est un user ou un groupe.

si c'est un user l'id ne change pas mais on a un canal créé meme si dans cette table au lieu d'avoir username on aurait uid cela serait mieux

dans l'ideal une table genre :
`chatid`,`sender_uid`,`reciever_uid`,`reciever_type`,`message`,`timestamp`
serait mieux il me semble, je ne sais pas pourquoi on stocke l'IP
Jireck Jireckicon_post
pas d'echange ?
Dites moi sinon je clos
jpb jpbicon_post
je ne sais pas pourquoi on stocke l'IP

<== pour nommer et différencier les anonymes ...
Jireck Jireckicon_post
Citation : jpb 

je ne sais pas pourquoi on stocke l'IP

<== pour nommer et différencier les anonymes ... 

OK

et pour le reste de mon speach ?
un avis ?
nicolas2 nicolas2icon_post
pas simple a mètre en place dans l'état actuel du code !!!
Jireck Jireckicon_post
en meme temps c'est un chat pas un piece principal de npds... donc le faire de fond en comble serait un grand pas ou s'inspirer d'un autre...

de plus il serait bien de le passer en module comme cela,tu peux l'enlever ou le mettre quand tu veux ...

Apres c'est vous les chefs...
nicolas2 nicolas2icon_post
moi pas chef !!!! :-P
jpb jpbicon_post
comme déjà dit ca semble compliqué dans cette voie ... pourquoi plutôt ne pas s'appuyer sur $dbname (sous utilisé) et passer le "duo" par l'url ?? ca me semble plus simple et plus logique que de rajouter un type d'autorisation...
si on a un duo dans l'url on modifie en conséquence la les requete(s) sql et le js ? car les autorisations (utilisateurs) restreront les mêmes ...