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

Visualizzare elementi phpbb su pagine esterne. Come?

Supporto MODs generale.
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: Come posso visualizzare gli ultimi topic su pagine ester

Messaggio da Micogian » 25/10/2011, 22:48

Un file php comincia con il tag <?php e finisce con ?>, una volta sola.
Se il file è invece un file HTML i tag vanno messi all'inizio e alla fine del codice php.
nel caso degli include basta quello iniziale e quello finale

Codice: Seleziona tutto

<?php
include ("function.php");
include ("lista_topics.php");
?>
Ma non so se sia corretto, io avrei messo l'include nel file lista_topics.php ma considerando che gli include "inseriscono del codice" in un file potrebbe anche andare.


Le virgolette all'interno delle parentesi.

Codice: Seleziona tutto

include ("function.php");

Avatar utente
oltrecomics
Utente
Utente
Messaggi: 73
Iscritto il: 08/10/2011, 16:24
Versione: 3.0.9
Server: UNIX/Linux

Re: Come posso visualizzare gli ultimi topic su pagine ester

Messaggio da oltrecomics » 25/10/2011, 23:02

Ora comunque da il seguente errore:
Fatal error: Call to undefined function get_user_avatar() in /home/oltrecom/public_html/function.php on line 11

Cioè questa linea:

Codice: Seleziona tutto

$avatar_cor = get_user_avatar($row['user_avatar'], $row['user_avatar_type'], $w,$h);
Edit:
ho messo l'include in lista_topics.php

Codice: Seleziona tutto

<?php
       include ("function.php");
       
        define('IN_PHPBB', true);
        $phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './forum/';
        $phpEx = substr(strrchr(__FILE__, '.'), 1);
        include($phpbb_root_path . 'common.' . $phpEx);

        // Start session management.....
e da' l'errore sopra riportato
Ultima modifica di oltrecomics il 25/10/2011, 23:08, modificato 1 volta in totale.

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: Come posso visualizzare gli ultimi topic su pagine ester

Messaggio da Micogian » 25/10/2011, 23:07

Perchè quella è una funzione di phpbb e si trova in functions_display.php, devi inserire anche quello

Codice: Seleziona tutto

include($phpbb_root_path . 'includes/functions_display.' . $phpEx);
nel file lista_topic.php dopo l'include del file "common".
Me ne ero dimenticato.

Avatar utente
oltrecomics
Utente
Utente
Messaggi: 73
Iscritto il: 08/10/2011, 16:24
Versione: 3.0.9
Server: UNIX/Linux

Re: Come posso visualizzare gli ultimi topic su pagine ester

Messaggio da oltrecomics » 25/10/2011, 23:13

Finalmenteee o yeah :)
stavo impazzendo.
Comincio a capirci qualcosa...come quando si impara la tabellina del due :P
Thanks

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: Come posso visualizzare gli ultimi topic su pagine ester

Messaggio da Micogian » 25/10/2011, 23:20

oltrecomics ha scritto:Finalmenteee o yeah :)
stavo impazzendo.
Comincio a capirci qualcosa...come quando si impara la tabellina del due :P
Thanks
Sapessi quante volte sono diventato matto e alla fine era per un punto messo al posto di una virgola.
PHP è precisione, non perdona gli errori e non sempre ti dice dove sta l'errore.

Ma come vedi non bisogna mai demordere.

Avatar utente
oltrecomics
Utente
Utente
Messaggi: 73
Iscritto il: 08/10/2011, 16:24
Versione: 3.0.9
Server: UNIX/Linux

Re: Come posso visualizzare gli ultimi topic su pagine ester

Messaggio da oltrecomics » 26/10/2011, 0:06

A proposito...
ora nelle altre query devo aggiungere in "$sql = "SELECT" la voce topic_poster?

Per questa invece?

Codice: Seleziona tutto

$avatar_author[$n] =  user_avatar($row['topic_poster'], '40', '40') ;
devo fare nel seguente modo?

Codice: Seleziona tutto

$avatar_author_1[$n1] =  user_avatar($row1['topic_poster'], '40', '40') ;
$avatar_author_2[$n2] =  user_avatar($row2['topic_poster'], '40', '40') ;
ecc.
Per la function, devo aggiungerne altre così?

Codice: Seleziona tutto

function   user_avatar($id,$w,$h)
{
global $db ;
   $sql1 = "SELECT user_id, user_avatar, user_avatar_type
   FROM " . USERS_TABLE . "
   WHERE user_id =" . $id ;
$result1 = $db->sql_query($sql1);
$row1 = $db->sql_fetchrow($result1);
$avatar_cor = get_user_avatar($row1['user_avatar'], $row1['user_avatar_type'], $w,$h);
   return $avatar_cor ;
}
Manca qualcosa, o funziona in un altro modo?

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: Come posso visualizzare gli ultimi topic su pagine ester

Messaggio da Micogian » 26/10/2011, 6:33

oltrecomics ha scritto:A proposito...
ora nelle altre query devo aggiungere in "$sql = "SELECT" la voce topic_poster?
E' la prima cosa che avevo detto di fare:

Codice: Seleziona tutto

Si può recuperare l'user_id di un Topic ? = certamente, è il campo "topic_poster" e visto che questo valore non è previsto basta aggiungerlo nel SELECT

    $sql = "SELECT topic_id, forum_id, topic_title, topic_time, topic_moved_id, topic_first_poster_name, topic_poster
Per questa invece?
$avatar_author[$n] = user_avatar($row['topic_poster'], '40', '40') ;
devo fare nel seguente modo?
$avatar_author_1[$n1] = user_avatar($row1['topic_poster'], '40', '40') ;
$avatar_author_2[$n2] = user_avatar($row2['topic_poster'], '40', '40') ;
ecc.
Anche qui scrivevo:
Per modificare la dimensione bisogna operare nella function inserendo il valore del width o dell'heigth: ( 'o' non 'e', o l'uno o l'altro)
Se mi metti i valori 40 e 40, metti che l'avatar originale sia 200x100 diventa quadrato, ma questa potrebbe anche essere una scelta per uniformare le dimensioni.
Nel mio esempio ho messo

Codice: Seleziona tutto

$avatar_author[$n] =  user_avatar($row['topic_poster'], '', '50') ;
quindi solo l'altezza, la larghezza è vuota, anche se va indicata comunque. Oppure l'inverso.
Non ho capito perchè mi metti più righe ($avatar_author_1[$n1], $avatar_author_2[$n2], ecc.)
Che senso ha ? Qual'è il valore di $n ? è un valore che cambia ad ogni record, parte da 0 e aumenta di uno per ogni riga della query, sarà quindi 0, 1, 2, 3, ecc. e pertanto $avatar_author($n] sarà sempre diverso,
sarà $avatar_author(0], $avatar_author(1], $avatar_author(2], ecc, uno per ogni riga.

$n1, $n2, ecc. da dove saltano fuori ?
Per la function, devo aggiungerne altre così?

Codice: Seleziona tutto

function   user_avatar($id,$w,$h)
{
global $db ;
   $sql1 = "SELECT user_id, user_avatar, user_avatar_type
   FROM " . USERS_TABLE . "
   WHERE user_id =" . $id ;
$result1 = $db->sql_query($sql1);
$row1 = $db->sql_fetchrow($result1);
$avatar_cor = get_user_avatar($row1['user_avatar'], $row1['user_avatar_type'], $w,$h);
   return $avatar_cor ;
}
Manca qualcosa, o funziona in un altro modo?
Poniti questa domanda= "Cosa fa la function?" Restituisce l'avatar qualora ti inserisca nei parametri l'user_id e una delle due dimensioni.
Allora vuol dire che funziona sempre allo stesso modo, cambierà il risultato se cambiano i parametri.

La function è una sola, che senso ha creare altre functions che alla fine sarebbero identiche? quello che cambia sono i parametri che gli dai che devono essere 3, l'user_id, la larghezza e l'altezza, ma abbiamo detto che ci va una sola delle due.
Devi comunque passare 3 valori, anche vuoti ma 3

Codice: Seleziona tutto

$avatar_author[$n] =  user_avatar($row['topic_poster'], '', '40') ;

ma potresti anche basarti sul width:

Codice: Seleziona tutto

$avatar_author[$n] =  user_avatar($row['topic_poster'], '40', '') ;

Avatar utente
oltrecomics
Utente
Utente
Messaggi: 73
Iscritto il: 08/10/2011, 16:24
Versione: 3.0.9
Server: UNIX/Linux

Re: Come posso visualizzare gli ultimi topic su pagine ester

Messaggio da oltrecomics » 26/10/2011, 15:05

Sorry :oops:
la prima era una domanda retorica.
Per la function ora ho quasi capito a cosa serve.
Invece per quanto riguarda questa:

Codice: Seleziona tutto

$avatar_author[$n] =  user_avatar($row['topic_poster'], '', '50') ;
forse mi sono spiegato male, non volevo mettere più righe sotto la stessa query, ma ad esempio questa query:

Codice: Seleziona tutto

...$topic_title_1[$n1] = $row1['topic_title'];
$topic_author_1[$n1] =  $row1['topic_first_poster_name'];
...?...
come aggiungo $avatar_author?
Io ho pensatoin questo modo:

Codice: Seleziona tutto

$avatar_author_1[$n1] =  user_avatar($row1['topic_poster'], '', '50') ;
Mentre in frontend il codice rimane uguale:

Codice: Seleziona tutto

. $avatar_author[$y] . 
o devo cambiarlo in questo modo?

Codice: Seleziona tutto

. $avatar_author_1[$y] . 
Le impostazioni che ho messo per dimensioni sono volute per due motivi:
1) mi interessa avere un avatar quadrato
2) se metto solo l'altezza si IE non mi visualzizza l'immagine (uso sempre due browser per controllare)
Ultima modifica di oltrecomics il 26/10/2011, 15:19, modificato 1 volta in totale.

Avatar utente
oltrecomics
Utente
Utente
Messaggi: 73
Iscritto il: 08/10/2011, 16:24
Versione: 3.0.9
Server: UNIX/Linux

Re: Come posso visualizzare gli ultimi topic su pagine ester

Messaggio da oltrecomics » 26/10/2011, 15:19

Proprio come pensavo :)
Solved!

Grazie grande capo ;)

Avatar utente
oltrecomics
Utente
Utente
Messaggi: 73
Iscritto il: 08/10/2011, 16:24
Versione: 3.0.9
Server: UNIX/Linux

Re: Come posso visualizzare gli ultimi topic su pagine ester

Messaggio da oltrecomics » 26/10/2011, 15:36

Ora mi manca l'ultima cosa:
il latest image topic... ossia
visualizzare le immagini tratte sul bbcode img (solo del primo post), degli ultimi 5 (o più) topic, con in basso il nome del topic , la categoria a cui appartiene e una breve introduzione del topic (es 20 lettere).
Per capire meglio vorrei una cosa tipo questa:
http://www.oltrecomics.com/home/about-us

Questa è tosta, eh :P
Ma un geniaccio come te saprà fare anche di meglio di quello che ho chiesto, vero?

In attesa di risposta provo a seguire la tua guida.

Rispondi

Torna a “Supporto MODs”

Chi c’è in linea

Visitano il forum: Nessuno e 52 ospiti