phpBB Italia chiude!
phpBB Italia ringrazia tutti gli utenti che hanno dato fiducia al nostro progetto per ben 9 anni, e che, grazie al grande lavoro fatto da tutto lo Staff (rigorosamente a titolo gratuito), hanno portato il portale a diventare il principale punto di riferimento italiano alla piattaforma phpBB.

Purtroppo, causa motivi personali, non ho più modo di gestirlo e portarlo avanti. Il forum viene ora posto in uno stato di sola lettura, nonché un archivio storico per permettere a chiunque di fruire di tutte le discussioni trattate.

Il nuovo portale di assistenza per l'Italia di phpBB diventa phpBB-Store.it, cui ringrazio per aver deciso di portare avanti questo grande progetto.

Grazie ancora,
Carlo - Amministratore di phpBB Italia

richiamare utenti di un determinato gruppo phpBB

Area di discussione relativa al linguaggio di programmazione web più conosciuto. Il forum è dedicato anche a MySQL, la piattaforma di database più utilizzata con il PHP.
Rispondi
Avatar utente
slash
Utente
Utente
Messaggi: 67
Iscritto il: 30/08/2011, 19:40
Sesso: Maschio
Versione: 3.0.10
Server: UNIX/Linux
PHP: 5.3.10
Database: MySQL 5.5.13-enterprise-commercial-advan
Contatta:

richiamare utenti di un determinato gruppo phpBB

Messaggio da slash » 11/01/2012, 14:10

Giorno a tutti! avrei bisogno di richiamare in una pagina html tutti gli utenti appartenenti ad un determinato gruppo di phpBB.

Sapete aiutarmi? col php sono al livello di un ameba!

GRAZIE!
Immagine
Immagine

Avatar utente
Micogian
Leader Programmatori
Leader Programmatori
Messaggi: 3704
Iscritto il: 07/01/2010, 8:51
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.4.36
Database: MySQL 5.1.70-log
Località: Udine
Contatta:

Re: richiamare utenti di un determinato gruppo phpBB

Messaggio da Micogian » 11/01/2012, 14:22

Cosa vuol dire "richiamare"? forse volevi dire "elencare" ? la cosa è leggermente diversa.
Se è una Lista che vuoi il "Gruppo" dove e come viene distinto ?

Avatar utente
slash
Utente
Utente
Messaggi: 67
Iscritto il: 30/08/2011, 19:40
Sesso: Maschio
Versione: 3.0.10
Server: UNIX/Linux
PHP: 5.3.10
Database: MySQL 5.5.13-enterprise-commercial-advan
Contatta:

Re: richiamare utenti di un determinato gruppo phpBB

Messaggio da slash » 11/01/2012, 14:29

ecco l ho detto che sono un ameba in php XD! allora mi spiego meglio:

Io, per ipotesi, ho creato il gruppo utenti: "noob" dal pda di phpbb ora vorrei vedere nel index_body tutti gli utenti appartenerti a quel gruppo.
Immagine
Immagine

Avatar utente
Carlo
Amministratore
Amministratore
Messaggi: 9957
Iscritto il: 19/04/2009, 10:24
Sesso: Maschio
Versione: 3.2.0
Server: UNIX/Linux
PHP: 7.1.0
Database: MySQL(i) 10.0.27-MariaDB-cll-lve
Località: Puglia
Contatta:

Re: richiamare utenti di un determinato gruppo phpBB

Messaggio da Carlo » 11/01/2012, 14:47

In generale dovresti creare una query SQL che estragga la lista di tutti gli utenti nel gruppo con ID X, e poi con un ciclo foreach aggiungerli ad una variabile di template.
MODs | Stili | Traduzioni MOD
Ogni MP contenente una richiesta di supporto verrà ignorato.

Avatar utente
slash
Utente
Utente
Messaggi: 67
Iscritto il: 30/08/2011, 19:40
Sesso: Maschio
Versione: 3.0.10
Server: UNIX/Linux
PHP: 5.3.10
Database: MySQL 5.5.13-enterprise-commercial-advan
Contatta:

Re: richiamare utenti di un determinato gruppo phpBB

Messaggio da slash » 11/01/2012, 14:57

XD! come faccio tutto ciò??? finché si sta nel campo html e css me la cavo ma ripeto sql e php per mè sono out!

Grazie!
Immagine
Immagine

Avatar utente
Micogian
Leader Programmatori
Leader Programmatori
Messaggi: 3704
Iscritto il: 07/01/2010, 8:51
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.4.36
Database: MySQL 5.1.70-log
Località: Udine
Contatta:

Re: richiamare utenti di un determinato gruppo phpBB

Messaggio da Micogian » 11/01/2012, 16:28

Se hai un pò di pazienza posso darci un'occhiata, penso che il Gruppo vada cercato con una query su più tabelle, users, groups e user_groups. Nel frattempo controlla nelal tabella groups qual'è l'ID del gruppo che ti interessa visualizzare.

Avatar utente
slash
Utente
Utente
Messaggi: 67
Iscritto il: 30/08/2011, 19:40
Sesso: Maschio
Versione: 3.0.10
Server: UNIX/Linux
PHP: 5.3.10
Database: MySQL 5.5.13-enterprise-commercial-advan
Contatta:

Re: richiamare utenti di un determinato gruppo phpBB

Messaggio da slash » 11/01/2012, 18:03

Grazie Mico! attenderò con ansia! appena torno a casa ti faccio sapere l iD del gruppo!
Immagine
Immagine

Avatar utente
Micogian
Leader Programmatori
Leader Programmatori
Messaggi: 3704
Iscritto il: 07/01/2010, 8:51
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.4.36
Database: MySQL 5.1.70-log
Località: Udine
Contatta:

Re: richiamare utenti di un determinato gruppo phpBB

Messaggio da Micogian » 11/01/2012, 20:08

Allora, devi fare così:

1) Crea un file nella root del forum dal nome "special_group.php" con il seguente contenuto:

Codice: Seleziona tutto

<?php
$group = '99';  // sostituire con il group_id interessato
$sql = "SELECT u.user_id, u.username, u.user_colour, g.group_id, g.group_name, ug.group_id, ug.user_id
    FROM " . USERS_TABLE . " u, " . GROUPS_TABLE . " g, " . USER_GROUP_TABLE . " ug 
    WHERE g.group_id = " . $group ."
    AND u.user_id = ug.user_id
    AND g.group_id = ug.group_id
    ORDER BY u.username" ;
    $result = $db->sql_query($sql);
    while ($row = $db->sql_fetchrow($result))
    {
    $group_name = $row['group_name'];
    $user_group = get_username_string('full', $row['user_id'], $row['username'], $row['user_colour']);
    $special_group_list .= ($special_group_list != '') ? ', ' . $user_group : $user_group;    
    }
$template->assign_vars(array(
    'LEGEND_SPECIAL_LIST'     => "Gruppo " . $group_name . ": " ,
    'SPECIAL_USERS_LIST'    => $special_group_list
    ));
?>
2) Sostituisci ovviamente il valore di $group = 99; con il group_id che ti interessa estrarre.

3) Nel file index.php inserisci, prima della riga // Output page la seguente riga di codice:

Codice: Seleziona tutto

include($phpbb_root_path . 'special_group.' . $phpEx);
4) Nel template, nel file index_body.html trova il seguente codice:

Codice: Seleziona tutto

<!-- IF S_DISPLAY_ONLINE_LIST -->
    <!-- IF U_VIEWONLINE --><h3><a href="{U_VIEWONLINE}">{L_WHO_IS_ONLINE}</a></h3><!-- ELSE --><h3>{L_WHO_IS_ONLINE}</h3><!-- ENDIF -->
    <p>{TOTAL_USERS_ONLINE} ({L_ONLINE_EXPLAIN})<br />{RECORD_USERS}<br /> <br />{LOGGED_IN_USER_LIST}
    <!-- IF LEGEND --><br /><em>{L_LEGEND}: {LEGEND}</em><!-- ENDIF --></p>
<!-- ENDIF --> 
e aggiungi questo:

Codice: Seleziona tutto

<!-- IF S_USER_LOGGED_IN and not S_IS_BOT -->
<p>{LEGEND_SPECIAL_LIST} {SPECIAL_USERS_LIST}</p>
<!-- ENDIF --> 
Aggiorna la cache e prova.

Avatar utente
slash
Utente
Utente
Messaggi: 67
Iscritto il: 30/08/2011, 19:40
Sesso: Maschio
Versione: 3.0.10
Server: UNIX/Linux
PHP: 5.3.10
Database: MySQL 5.5.13-enterprise-commercial-advan
Contatta:

Re: richiamare utenti di un determinato gruppo phpBB

Messaggio da slash » 11/01/2012, 21:13

Grazie infinite mico! funziona alla perfezione! \m/

Domani sistemo l html e poi ti faccio vedere a cosa mi è servito tutto ciò ;)
Immagine
Immagine

Rispondi

Torna a “PHP - MySQL”

Chi c’è in linea

Visitano il forum: Nessuno e 45 ospiti