Bonsoir à tous (ou bonjour, tout dépend à l'heure que vous lisez ce message).
Je ne sais pas trop si je poste au bon endroit pour mon problème, j'espère ne pas faire d'erreur.

J'ai suivi le tutoriel Chat Ajax/PHP, il fonctionne très bien (félicitations pour l'excellence du tutoriel par la même occasion) et j'aimerais donc améliorer ce projet pour le rendre plus complet !

J'vous explique rapidement, j'aimerais créer des salons.
C'est-à-dire que la page d'accueil demanderais un pseudo et le salon choisi par l'utilisateur pour le rediriger vers ce salon précis. Actuellement les messages sont enregistrés directement dans la base de données et afficher à l'utilisateur, il faudrait bien sur créer une table "salons" et la mettre en relation avec la table "messages" précédemment créée et citée.
Seulement le soucis qui s'ouvre devant moi est que je ne vois strictement pas comment je peux afficher tel ou tel salon à un utilisateur si ce n'est de créer un fichier PHP pour chaque salon avec un code qui s'adapterait en fonction du salon.

Je voulais aussi donner la possibilité à l'utilisateur de créer son propre salon qui pourrait être public ou privé (mot de passe pour sécurisé l'accès). Comme c'est la version finale que j'aimerais acquérir, j'aimerais savoir si vous aviez des idées pour avancer ma réalisation ?

En vous remerciant d'avance !

Aleks.

2 réponses


Bonjour,

Pour les salons publics, donc déjà créé, je peux te dire comment moi j'aurais fais :
Dans ta table "message" tu créer une colonne "salon" et aura comme valeur "1, 2, 3 ...".
Et après quand la personne choisi le salon dans laquel elle veut aller, et bien tu met dans l’URL ?salon=X, X étant le numéro du salon.
Et après dans ton salon pour récupérer les message et bien tu fait un WHERE salon=X.

Si tu comprend pas dit le moi, je verrais pour être plus clair. Mais j'espère que tu as saisi l'idée principal.

Cordialement,
Jordan

AlekSknm
Auteur

J'ai finalement trouvé une solution pour gérer les salons, maintenant il ne me reste plus qu'un petit soucis c'est lorsque la personne veut entrer dans un salon dit "privé" qui nécessite un mot de passe.
J'ai créer une fonction entrerSalon() qui s'applique sur le onSubmit du formulaire pour se connecter et aller tchatter. Une requête Ajax est passée pour vérifier si le salon est privé ou public. Dans le cas où le salon est privé, je return false (pour empêcher l'envoi du formulaire) et si il est public je return true (pour envoyer vers le tchat). Seulement cette méthode ne fonctionne pas ...
Je vous transmets le code de ma fonction:

function entrerDansSalon()
{
var salon = $("#idSalon").val();
$.post(urlSalon, {action:"testPrivePublic", idsalon: salon}, function(data)
{
if(data.resultat == "prive")
{
return false;
}
else if(data.resultat == "public")
{
return true;
}
}, 'json');
}

L'appel de la fonction:
<form action = "index.php" method = "post" id = "formEntrer" onSubmit = "return entrerDansSalon()">

Lorsque je fais un alert de "data.resultat" à l'envoi, il me sort bien "prive" ou "public", donc ici pas de soucis. C'est plus pour la suite que j'ai un problème.

Merci de votre aide ! :)