Fork me on GitHub

Rapport de message :*
 

Re: Notifications et base de données

Titre du sujet : Re: Notifications et base de données
par gawel84 sur 10/03/2006 17:13:16

Bah le "plus simple" si on peut ainsi dire, semblerait de faire un script PHP qui ajoute automatiquement les notifications.

Par exemple, tu crées dans un répertoire "lambda" (protégé si possible) un fichier db_notifications.php avec :

<?php

    
// gestion des blocs de droite
    // 1 = Avec blocs de droite
    // 0 = Sans blocs de droite
    
$xoopsOption['show_rblock'] = 1
    
    if (
file_exists("mainfile.php")) {
    include(
"mainfile.php");
    } elseif (
file_exists("../mainfile.php")) {
    include(
"../mainfile.php");
    } else { 
    include(
"../../mainfile.php");
    }
    
    include(
XOOPS_ROOT_PATH."/header.php");
    
    
    
// On fait la liste des utilisateurs (uid) existants
    
$sql_users 'SELECT uid FROM '.$xoopsDB->prefix("users");
    
    if(!
$result $xoopsDB->query($sql_users)) {
        
redirect_header('index.php',2,MD_ERROROCCURED);
        exit();    
    }
    
    
// Pour chaque uid
    
while(list($id) = $xoopsDB->fetchRow($result)) {
        
// En prenant exemple sur une notifications existante, changes les valeurs '3', '0', 'global' ou 'story_submit' si il y a besoin
        
$sql "INSERT INTO " $xoopsDB->prefix(xoopsnotifications) . "(`not_modid`, `not_itemid`, `not_category`, `not_event`, `not_uid`, `not_mode`) VALUES ('3', '0', 'global', 'story_submit', '".$id."', '0')";
        
        
// Affiche l'erreur s'il y en a une
        
if (!$result_insert $xoopsDB->queryF($sql)) {
            echo 
$sql."<br />";
            echo 
"Erreur avec l'utilisateur : ".$id."<br />";
        }
    }
    
    
redirect_header("index.php",5,$messagesent);
    
    include(
XOOPS_ROOT_PATH."/footer.php");

?>


Tu adaptes la requête SQL pour chaque type de notification, en te basant sur une notification semblable existante (not_modid, not_itemid, not_category et not_event).

Je sais pas si c'est clair

Tu lance le script en allant à l'adresse : http://tonsitexoops/lambda/db_notifications.php

Penses par contre a supprimer le fichier une fois que tu as créé toutes tes notifications.
Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

186 Personne(s) en ligne (180 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 1 | Invité(s): 185 | babouille, Plus ...