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

variabile post senza form

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
alex75
phpBB Expert
phpBB Expert
Messaggi: 943
Iscritto il: 31/03/2012, 23:46
Sesso: Maschio
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.6.37
Database: MySQL 5.6.39
Località: palermo
Contatta:

variabile post senza form

Messaggio da alex75 » 28/10/2016, 0:58

Ciao ragazzi.
Ho realizzato un contatore che conta il numero di visualizzazioni e click di un banner a rotazione.
questo banner cambia id ad ogni aggiornamento della pagina.
Per il conta click ho fatto un redirect ad un file click.php con l'id sul link e funziona perfettamente.
Adesso per il conta visite avrei bisogno di passare automaticamente l'id al file visite.php semplicemente al caricamento/aggiornamento della pagina.
quindi niente form e/o nulla da cliccare. qualcosa del tipo onload...

Avatar utente
alex75
phpBB Expert
phpBB Expert
Messaggi: 943
Iscritto il: 31/03/2012, 23:46
Sesso: Maschio
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.6.37
Database: MySQL 5.6.39
Località: palermo
Contatta:

Re: variabile post senza form

Messaggio da alex75 » 28/10/2016, 11:59

sto provando su diversi fronti...
se uso un "GET" il contatore incrementa il valore (ma c'è bisogno di cliccarlo mentre io vorrei che lo faccia automaticamente).
Ho provato con un popup e funziona, ma per ovvi motivi vorrei evitare il popup; sia perchè il 99% degli utenti li hanno già bloccati di default e sia perchè non voglio una nuova finestra.
credo che a questo punto la soluzione migliore sarebbe quella di usare "$session" e passare la variabile da php a php.
qualcuno potrebbe consigliarmi come usarla?
questo è un quadro generale del codice:
La variabile che devo passare è l'id utente del banner visualizzato.
il banner viene estratto tramite file.php in maniera dinamica con

Codice: Seleziona tutto

ORDER BY RAND() LIMIT 1";
il file php passa l'id al template in questo modo:

Codice: Seleziona tutto

$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
$template->assign_block_vars('lista_banner',array(
'USER_COR'    => $row['user_id'],
'BANNER'    => $row['user_banner'],
'VISITE'    => $row['cont_visite'],
'CLICK'    => $row['cont_click']
));
}

Avatar utente
alex75
phpBB Expert
phpBB Expert
Messaggi: 943
Iscritto il: 31/03/2012, 23:46
Sesso: Maschio
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.6.37
Database: MySQL 5.6.39
Località: palermo
Contatta:

Re: variabile post senza form

Messaggio da alex75 » 28/10/2016, 20:12

Credo di essere arrivato ad una conclusione... sembra evidente che ci sia un passaggio in più.
Praticamente ho inserito il codice del file contavisite.php direttamente nel file banner.php in modo da incrementare automaticamente il contavisite ad ogni sua apertura/aggiornamento.
adesso manca soltanto di trovare il corretto user_id che momentaneamente ho messo fisso per costatarne la funzionalità, così:

Codice: Seleziona tutto

$id = '48';
e questo è il codice del banner.php per intero:

Codice: Seleziona tutto

<?php
if (!defined('IN_PHPBB'))
{
exit;
}
$sql = "SELECT ut.user_id, ut.cont_visite, ut.cont_click, ut.user_banner, pt.user_id, pt.pf_phpbb_website
FROM " . USERS_TABLE . " ut, " . PROFILE_FIELDS_DATA_TABLE . " pt 
WHERE pt.pf_phpbb_website IS NOT NULL
AND user_banner > 0
AND cont_punti > 0
AND ut.user_id = pt.user_id 
ORDER BY RAND() LIMIT 1";
        
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
$template->assign_block_vars('lista_banner',array(
'USER_COR'    => $row['user_id'],
'BANNER'    => $row['user_banner'],
'VISITE'    => $row['cont_visite'],
'CLICK'    => $row['cont_click'],
'SITO'    => $row['pf_phpbb_website']
));
}
// Mi connetto al database mysql
$dbi = mysqli_connect("localhost", 'user', 'password', 'db_name');
// Prendo l'id relativo al banner
$id = '48';
// Incremento il numero di visite del contatore 
$req = mysqli_query($dbi, "UPDATE `phpbb_users` SET cont_visite = cont_visite + 1 WHERE user_id = '$id'; ");
?>
Come faccio a prendere il corretto user_id e metterlo nella variabile $id ?

Avatar utente
alex75
phpBB Expert
phpBB Expert
Messaggi: 943
Iscritto il: 31/03/2012, 23:46
Sesso: Maschio
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.6.37
Database: MySQL 5.6.39
Località: palermo
Contatta:

Re: variabile post senza form

Messaggio da alex75 » 29/10/2016, 13:15

risolto.
Ho modificato questo:

Codice: Seleziona tutto

$id = $row['user_id']

Rispondi

Torna a “PHP - MySQL”

Chi c’è in linea

Visitano il forum: Nessuno e 40 ospiti