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

Utenti giornalieri aiutatemi

Cerchi una MOD? Chiedi in questo forum.
Questa sezione è supportata dagli utenti del forum, pertanto lo Staff potrebbe non eseguire tali richieste.
chicks0315
Utente
Utente
Messaggi: 186
Iscritto il: 05/08/2010, 17:39
Versione: 3.0.7-PL1
Server: UNIX/Linux

Utenti giornalieri aiutatemi

Messaggio da chicks0315 » 12/08/2010, 9:37

Salve ecco che richiedo la mia prima mod, io ho provato a crearla da me ma non ci sono riuscito fore perchè sbaglio query.

Comunque vorrei creare nella mia pagina index.php una query che mi generi un risultato e questo risultato deve essere il numero sempre aggiornato nel giorno corrente degli utenti che si iscrivono e poi deve essere stampato a video accanto all'ultimo iscritto.

per esempio oggi è 12 agosto 2010 voglio sapere fino ad adesso quanti si sono iscritti tenendo conto che il 12 agosto parte dalle 00:00 fino alle 23:59

stampando a video nella pagina index.php dopo l'ultimo iscritto per esempio così :

ultimo iscritto Pico pallino Utenti al giorno 45


Io ci ho provato se non avete capito ve lo posso rispiegare spero mi aiuterete è da una settimana che ci provo.


EDIT: ps le mod che ho torvato fino ad adesso non sono buone perchè clcolano nel corso delle 24 ore quanti utenti si sono iscritti e questo non coincide con quello che voglio fare io perche nell'arco delle 24 ore potrebbe selezionare anche utenti del girono prima.

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: Utenti giornalieri aiutatemi

Messaggio da Carlo » 12/08/2010, 12:42

Hai qualche minima esperienza con il PHP? Sai interagire, tramite il PHP con MySQL?
MODs | Stili | Traduzioni MOD
Ogni MP contenente una richiesta di supporto verrà ignorato.

chicks0315
Utente
Utente
Messaggi: 186
Iscritto il: 05/08/2010, 17:39
Versione: 3.0.7-PL1
Server: UNIX/Linux

Re: Utenti giornalieri aiutatemi

Messaggio da chicks0315 » 12/08/2010, 14:04

diciamo che l'ho studiato apparte, però se mi potete creare voi la query soltanto ve ne sarei grato la connessione al database sql la so fare è solo che non mi viene da fare la query con le variabili del mio phpbb.

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: Utenti giornalieri aiutatemi

Messaggio da Micogian » 12/08/2010, 18:23

Beh, è semplice.
La tabella da interrogare è "users", il valore da controllare "user_regdate" che è la data di iscrizione in codice timestamp.
Quindi il dato che ti serve è il "timestamp" delle ore 00.00 della data corrente e con la query andrai a estrarre il numero degli user_id registrati dopo questa data.
Vediamo come:
Per conoscere i dati separati di giorno, mese, anno della data corrente fai così:

Codice: Seleziona tutto

$gg = date(d) ; // giorno corrente
$mm = date(m) ; // mese corrente
$aa = date(Y) ; // anno corrente
Il timestamp delle ore 00.00 della data corrente lo trovi in questo modo:

Codice: Seleziona tutto

$data_ini = mktime(0,0,0,$mm,$gg,$aa) ;  // timestamp alle ore 00 della data corrente
A questo punto hai quello che ti serve, crei una query che "estrae" tutti gli user_id successivi a quel timestamp e hai gli iscritti del giorno.
Poi crei la variabile che userai nel template.

In sostanza, crea un file di nome mod_last_user.php con questo codice:

Codice: Seleziona tutto

<?php
$gg = date(d) ; // giorno corrente
$mm = date(m) ; // mese corrente
$aa = date(Y) ; // anno corrente
$data_ini = mktime(0,0,0,$mm,$gg,$aa) ;  // timestamp alle ore 00 della data corrente

$sql = "SELECT COUNT(user_id) as iscritti, user_regdate FROM " .  USERS_TABLE . " WHERE user_regdate > " . $data_ini ;
$result = $db->sql_query($sql);
$row = $db->sql_fetchrow($result);

$iscritti = $row['iscritti'] ;

$template->assign_vars(array(
	'USERS_NEW'  => $iscritti   
	));
?>
Nel file index.php ci aggiungi (prima della riga con il codice "// Output page") la seguente riga:

Codice: Seleziona tutto

include($phpbb_root_path . 'mod_last_users.' . $phpEx);
In questo modo tieni il file index.php più pulito, senza bisogno di inserirvi il codice della Mod.
Nel template "index_body.html" inserisci la variabile {USERS_NEW} creata dalla Mod.

chicks0315
Utente
Utente
Messaggi: 186
Iscritto il: 05/08/2010, 17:39
Versione: 3.0.7-PL1
Server: UNIX/Linux

Re: Utenti giornalieri aiutatemi

Messaggio da chicks0315 » 12/08/2010, 18:38

ma sei un grandeee ! io l'avevo fatta così la query ma il fatto del timestamp non mi era chiaro si vede che mi sono imbrogliato con le date normali grazie mille ora provo e poi ti dico :-)


EDIT: funziona alla grande grazie, comunque per far comparire affianco dell'ultimo iscritto mi esce solo il numero allora io nell'index_body.html ci ho messo Utenti oggi: <strong>{variabile}</strong> e così mi esce perfettamente in stile con le altre ( tema subsilver2) però gli altri dati non sta fatto così nell'indexbody ma semplicemente mettendo la varibile. Io l'ho dichiarata la variabile nel language/common/ie ed en ma non funziona devo per forza scrivere io nell'indexbody la scritta Utenti oggi: ?

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: Utenti giornalieri aiutatemi

Messaggio da Micogian » 12/08/2010, 20:50

Hai il problema multilingua ?
Se è così puoi creare una variabile nel file language del tipo
'L_USERS_NEW' => 'Utenti oggi: " ,
fai la stessa cosa in inglese e metti le due variabili affiancate nel file index_body.

Altrimenti potresti anche creare la variabile fin dall'inizio nel file php:

Codice: Seleziona tutto

$template->assign_vars(array(
   'USERS_NEW'  => "Utenti oggi: " . $iscritti   
   ));

chicks0315
Utente
Utente
Messaggi: 186
Iscritto il: 05/08/2010, 17:39
Versione: 3.0.7-PL1
Server: UNIX/Linux

Re: Utenti giornalieri aiutatemi

Messaggio da chicks0315 » 12/08/2010, 23:11

infatti io avevo fatto questo prim ancora che me lo avessi detto su nel file language/en e anche in it:

'USERS_NEW' => 'Utenti oggi: " ,

Messo questo poi nell'indexbody.html metto {USERS_NEW}
e mi da solo il numero ma non la scritta "Utenti oggi:"


Dici che mi devo creare una variabile ?

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: Utenti giornalieri aiutatemi

Messaggio da Micogian » 13/08/2010, 11:10

Questo non lo so bene, mi sembra che le variabili di lingua vadano precedute dalla stringa "L_".
In pratica dovresti inserire

Codice: Seleziona tutto

<strong>{L_USERS_NEW} {USERS_NEW}</strong>
per avere sia la legenda in base alla lingua che il valore.
Se poi vuoi fare a meno che venga fuori il dato se non ci sono utenti iscritti puoi fare così:

Codice: Seleziona tutto

<!-- IF USER_NEW --><strong>{L_USERS_NEW} {USERS_NEW}</strong><!-- ENDIF -->
Che in pratica non visualizza niente se USER_NEW è uguale a zero.
Naturalmente puoi anche usare dei tag CSS per assegnare lo stile.

chicks0315
Utente
Utente
Messaggi: 186
Iscritto il: 05/08/2010, 17:39
Versione: 3.0.7-PL1
Server: UNIX/Linux

Re: Utenti giornalieri aiutatemi

Messaggio da chicks0315 » 13/08/2010, 16:21

Grazie mille ci proverò e in gironata vi dico :-)

chicks0315
Utente
Utente
Messaggi: 186
Iscritto il: 05/08/2010, 17:39
Versione: 3.0.7-PL1
Server: UNIX/Linux

Re: Utenti giornalieri aiutatemi

Messaggio da chicks0315 » 14/08/2010, 16:38

Salve scusate post consecutivo, praticamente sto testando la mod per gli utenti giornalieri solo che vedo che sta qualcosa di strano, per esempio ora mi dicie che fino ad adesso si sono iscritte 70 persone però se io vado alla voce iscritti e ordino in base alla data di iscrizione risolta che l'ultimo che si è iscritto oggi è il numero 58 quindi ci sono 58 utenti iscritti oggi e non 70, cosa può essere ?

Rispondi

Torna a “Richiesta MOD”

Chi c’è in linea

Visitano il forum: Nessuno e 58 ospiti