Fork me on GitHub


 Bas   Précédent   Suivant

« 1 ... 58 59 60 (61)


Re: avertir d'un nouveau message privé
Admin Frxoops
Inscrit: 05/03/2005 05:20
De Vaucluse
Messages: 960
Bonjour,
Si celà peut aider, j'ai répondu il y a quelques temps à une FAQ que tu pourras trouver ici traitant de ce sujet.
Celà fonctionne parfaitement sur mes différentes version 2.0.x et je pense que celà doit être facilement adaptable à la version 2.2.

Posté le : 18/11/2005 13:52
Transférer la contribution vers d'autres applications Transférer


Re: Page d'acceuil
Admin Frxoops
Inscrit: 05/03/2005 05:20
De Vaucluse
Messages: 960
Bonjour,
je ne sais pas si j'ai bien compris la question mais il y a peut être un probléme en procédant ainsi, c'est que la plupart des serveurs traitent le fichier index.html avant de traiter le fichier index.php. Conséquence celà va bien marcher pour l'ouverture du site sur la page index.html mais dés que l'on cliquera sur "accueil" dans un des sous site, il ne reviendra pas sur sa propre page d'accueil (index.php) mais sur la page "index.html". Personnellement, j'ai résolu ce genre de probléme en installant les sous sites xoosp dans des répertoires différents sous la racine du serveur et en ne laissant dans celle-ci que le fichier index.html, un lien étant rajouté dans tous les sous sites pour pouvoir éventuellement revenir à cette page.

/___ index.html
|___ /site 1------ index.php
|___ /site 2------ index.php

Posté le : 09/11/2005 18:45
Transférer la contribution vers d'autres applications Transférer


Re: hack boite au lettre
Admin Frxoops
Inscrit: 05/03/2005 05:20
De Vaucluse
Messages: 960
Bonjour,

Ayant besoin d'une fonctionnalité similaire, n'en trouvant pas et n'aimant pas flash j'ai décidé de mettre un peu la main à la pâte !!.
Aprés quelques recherches sur le net, je me suis intéressé aux classes XHR et JSRS permettant l'interrogation de bases de données (MySQL entre autre) depuis Javascript. Aprés de nombreux essais j'ai trouvé une solution que je décrit ci-dessous utilisant les classes JSRS . Si celà peut intéresser quelqu'un......

Télécharger les classes JSRS vous pouvez les trouver <a href=http://ns3686.ovh.net/~nwn/JSRS/>ici</a>

Copier les fichiers JSRSClient.js, JSRSServer.php et server.php dans la racine du site (/)

Modifier le fichier server.php comme suit:

< ?PHP
include_once "mainfile.php";
include XOOPS_ROOT_PATH.'/JSRSServer.php';
$SERVER = new JSRSServer();

function getUserName($idUser)
{
$conn = mysql_connect(XOOPS_DB_HOST,XOOPS_DB_USER,XOOPS_DB_PASS);
if(!$conn) return false;
if(!mysql_select_db(XOOPS_DB_NAME,$conn)) return false;
$res = mysql_query("SELECT msg_id FROM ".XOOPS_DB_PREFIX."_priv_msgs WHERE to_userid='".$idUser."' AND read_msg='0'");
if(!$res || mysql_num_rows($res) == 0) return "";
$userName = mysql_num_rows($res);
return $userName;
}
?>


Dans la partie BODY du fichier theme.html de votre théme insérer le script suivant:

< script>
function alertUserName()
{
if (!client) {
var client = new JSRSClient('<{$xoops_url}>'+"/server.php","POST");
client.define("getUserName");
var userName = getUserName('<{$xoops_userId}>');
if(!userName)
document.getElementById('NewMsgs').innerHTML = " ";
document.getElementById('NewMsgs').innerHTML = userName;
}
}
/* relance la requete toute les 60 secondes */
setInterval("alertUserName()",60000);
< /script >


Dans /modules/system/templates/blocks: modifier le fichier system_block_user.html.

modifier (en rouge) la condition qui permet d'afficher le nombre de messages reçus dans le menu user:

<{if $block.new_messages > 0}>
< a href="<{$xoops_url}>/viewpmsg.php"><{$block.lang_inbox}> [ < span style="color:#ff0000; font-weight: bold;" id="NewMsgs"><{$block.new_messages}>< /span> ]</a>
<{else}>
< a href="<{$xoops_url}>/viewpmsg.php"><{$block.lang_inbox}> [ < span style="color:#ff0000; font-weight: bold;" id="NewMsgs">< /span> ]</a>
<{/if}>

Attention: le lien vers les messages dans le template ne doit pas être le dernier de la liste (sinon petit bug d'affichage avec IE lors du rafraichissement de la valeur).

Tout n'est sûrement pas parfait (il y a 3 jours, je ne connaissais rien a javascript) et il faudrait sûrement déplacer les fichiers dans le répertoire 'include' de xoops de plus, je ne sais pas si celà engendre des failles de sécurité !! mais ça fonctionne. Je l'ai testé avec Mozilla, Netscape et IE je pense que celà doit fonctionner avec les autres types de navigateurs supportant javascript (si quelqu'un veut essayer.....). Tous les commentaires seront les bienvenus.

PS: si vous faites un copier/coller des codes précédents, pensez à retirer les espaces dans les balises ?PHP, script et span

Posté le : 24/08/2005 22:19
Transférer la contribution vers d'autres applications Transférer


Re: Probléme de mise í  jour de champ
Admin Frxoops
Inscrit: 05/03/2005 05:20
De Vaucluse
Messages: 960
Merci, ça fonctionne parfaitement.
N'y a t'il pas d'inconvénients à forcer ainsi les requétes ?

Posté le : 03/08/2005 20:00
Transférer la contribution vers d'autres applications Transférer


Re: ouverture d'un popup dans un popup
Admin Frxoops
Inscrit: 05/03/2005 05:20
De Vaucluse
Messages: 960
Bonjour,

J'ai eu le même probléme (mêmes idées .... lol) mais en utilisant javascript:openWithSelfMain (.etc....).
Vérifie en premier si les id (nom) des fenêtres que tu ouvres sont bien différents.
Si ils sont bien différents ya un truc que j'ai essayé et qui a bien marché:
J'ai passé mon site de 2.0.9.3 en 2.0.13 depuis, ça fonctionne parfaitement mais je ne sais pas pourquoi !!!

Effectivement, celà n'est pas considéré comme des popup par les navigateurs. :banana:

Posté le : 03/08/2005 01:20
Transférer la contribution vers d'autres applications Transférer


Probléme de mise í  jour de champ
Admin Frxoops
Inscrit: 05/03/2005 05:20
De Vaucluse
Messages: 960
bonjour,

Je voudrais mettre à jour un champ dans une base mais j'ai le message suivant (en mode debug mysql):

UPDATE dd32x_users SET annonce=0 WHERE uid=32
Error number: 0
Error message: Database update not allowed during processing of a GET request

j'utilise les lignes suivantes pour mettre à jour la base:

$sql = "UPDATE ".$xoopsDB->prefix('users')." SET annonce=".$userannonce." WHERE uid=".$xoopsUser->getVar("uid");
$xoopsDB->query($sql);

PS: ces lignes de code fonctionnent parfaitement dans un autre programme que j'ai écrit pour le même module !!!!
J'ai le même probléme avec une autre table qui n'est pas une table de xoops.

Quelqu'un a t'il une idée ?

Merci d'avance

Posté le : 02/08/2005 17:53
Transférer la contribution vers d'autres applications Transférer



 Haut
« 1 ... 58 59 60 (61)




Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

47 Personne(s) en ligne (37 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 47 | Plus ...