WebSite X5Help Center

 
Marco V.
Marco V.
User

E' possibile avere lo stesso guestbook su su due pagine distinte ?  it

Auteur : Marco V.
Visité 2115, Followers 2, Partagé 0  

Buongiorno,

sono in possesso della versione 11 professional; ho creato un piccolo sito in una versione per pc ed una per smartphone/mobile (attraverso un file .htaccess riesco a reindirizzare correttamente gli iphone/android etc. alla versione mobile)

Vorrei inserire nel sito (sia pc che mobile) un guestbook che però convidano i commenti.

Ho provato, nell'oggetto guestbook, a condividere la stessa sottocartella dove salvare i dati (stesso path).

Ho provato a modificare il file relativo alla pagina che contiene il guestbook ossia _nomepagina.php alla riga:

$gb->showForm(true, false, false, '***', 'guestbook', $imSettings['general']['url'] . '/public_html/xxxx/yyyyy/admin/guestbook.php?id=x5gb51');

inserendo la stessa cartella che contiene il file guestbook.php

Inoltre ho provato a modificare il file x5settings.php per specificare la stessa sottocartella.

Ma il risultato non cambia, i due gestbook rimangono indipendenti.

Quindi coma faccio a condividere gli stessi commenti nelle due pagine ?

Grazie, rimango in attesa di un Vs. aiuto.

Marco

Posté le
15 RéPONSES - 2 UTILE
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator
Meilleur utilisateur du mois ESMeilleur utilisateur du mois PT

... io non ho programmi, ma tu che puoi prova con un IFRAME nelle due pagine...

... realizzi il guestbook in una pagina NASCOSTA e senza applicare la grafica, e nelle pagine inserisci l'IFRAME in questo modo tramite un oggetto codice html | html:

<iframe src="paginanascosta.php" width="800" height="600" > </iframe>

... i valori te li personalizzi...

... se funzionasse, sarebbe il modo più semplice ed immediato; via codice php non posso esprimermi...

.

ciao



Lire plus
Posté le de  ‪ KolAsim ‪ ‪
Fabio B.
Fabio B.
User

Inserisci in una cella html questo codice:

<?php
$gb = new ImTopic('x5gb51');
$gb->setCommentsPerPage(10);
$gb->setTitle('TuoTitolo');
$gb->loadXML(pathCombine(array($imSettings['general']['public_folder'], 'TuaCartellaDeiCommenti')));
$gb->showSummary(true);
$gb->showForm(true, false, false, '', 'guestbook', $imSettings['general']['url'] . '/admin/guestbook.php?id=x5gb51');
$gb->showComments(true, 'desc', false);
?>

Le parti in neretto sono da personalizzare; troverai questa frazione di codice completa nella pagina originale del gb esportandola in locale ed aprendola con Notepad++

Lire plus
Posté le de Fabio B.
Fabio B.
Fabio B.
User

ps: devi settare l'estensione della pagina in php

Lire plus
Posté le de Fabio B.
Marco V.
Marco V.
User
Auteur

Ciao Fabio, ti ringrazio della risposta; ma purtroppo io mi sono spiegato male.

Ho realizzato il mio sito in maniera sdoppiata in due sottodomini indipendenti :

in uno ho la versione con un layout realizzato per un pc e l'altro con una veste per smartphone; in esso sono presenti per il 90% dati statici pertanto tali dati sono semplicemente duplicati nelle rispettive cartelle dei sottodomini.

L'unico oggetto dinamico istanziato in entrambi i sottodomini è il guestbook, e che quindi vorrei che condividessero le informazioni presente in esso.

Però l'oggetto (la classe) guestbook di website prevede che i dati possano essere memorizzati/letti in un file che può stare nella root del sottodominio oppure in una sotto-cartella di esso ma non in una cartella esterna. E qui nasce il problema !

Ho provato a modificare manualmente i settings ma senza riuscirvi ..... esiste un modo.

Grazie.

Ciao

Lire plus
Posté le de Marco V.
Fabio B.
Fabio B.
User

Sì, esiste:

 ‪ KolAsim ‪ ‪
... io non ho programmi, ma tu che puoi prova con un IFRAME nelle due pagine... ... realizzi il guestbook in una pagina NASCOSTA e senza applicare la grafica, e nelle pagine inserisci l'IFRAME in questo modo tramite un oggetto codice html | html: <iframe src="paginanascosta.php" width="800" height="600" > </iframe> ... i valori te li personalizzi... ... se funzionasse, sarebbe il modo più semplice ed immediato; via codice php non posso esprimermi...

più

Fabio Bevilacqua
Inserisci in una cella html questo codice: <?php $gb = new ImTopic('x5gb51'); $gb->setCommentsPerPage(10); $gb->setTitle('TuoTitolo'); $gb->loadXML(pathCombine(array($imSettings['general']['public_folder'], 'TuaCartellaDeiCommenti'))); $gb->showSummary(true); $gb->showForm(true, false, false, '', 'guestbook', $imSettings['general']['url'] . '/admin/guestbook.php?id=x5gb51'); $gb->showComments(true, 'desc', false); ?> troverai questa frazione di codice completa nella pagina originale del gb esportandola in locale ed aprendola con Notepad++
Fabio Bevilacqua

ps: devi settare l'estensione della pagina in php

ed ottieni quel che cerchi.

Mi rispiego: devi creare una pagina interna al sito col gb che abbia estensione php e sia nascosta; in quella pagina devi implementare il codice che ti ho dato in un oggetto html; nelle proprietà della pagina al passo 2 imposti che il programma crei la pagina senza applicare il modello (così non compariranno le immagini dell'header e del footer), al massimo dai un colore di sfondo se vuoi, oppure lo lasci trasparente perché resti visibile quello del sottosito se é diverso.

Quindi nel sottosito crei una pagina con un oggetto html nel quale inserirai un iframe alla pagina nascosta del sito padre.

Lire plus
Posté le de Fabio B.
Fabio B.
Fabio B.
User

Aggiungo due puntualizzazioni e un'altra idea:

  1. Se il gb originale lo inserisci in una pagina nascosta e poi lo richiami in un iframe ti ritroverai con una doppia scrollbar verticale per poter scorrere i commenti e la pagina (che dovrai dimensionare opportunamente anche in altezza per consentire una lettura abbastanza agevole dei commenti; se invece lo inserisci nella pagina visibile del tuo sito e lasci in quella invisibile la replica dinamica per gli iframe, la tua pagina visibile avrà una presentazione ed un funzionamento migliore
  2. poiché per gli stessi motivi sopra, cioé rendere agevole la lettura e gradevole la presentazione, é bene che il contenitore sia più capiente del contenuto, per poter eliminare almeno la scrollbar orizzontale ti consiglio di creare il gb originale nel sito mobile con le dimensioni ridotte in larghezza, e poi di richiamare nell'iframe del sito desktop la replica nascosta dal sito mobile

Un'altra idea che mi é venuta ma non ho tentato in prima persona é quella che mi sembra la soluzione ottimale in assoluto:

devi creare sia nel sito mobile che in quello desktop lo stesso gb originale; uno dei due lo devi creare con l'oggetto gb per configurarlo in modo semplice via programma; l'altro invece lo devi creare come da mio primo suggerimento, cioé esportando in locale il sito e prelevando opportunamente quello script dalla pagina che lo contiene per inserirlo in un oggetto html nel secondo sito con la stessa identica configurazione e codice dei commenti.

La cosa più importante però é che nel primo sito (e dunque anche nel secondo che ne é la copia) devi configurare il gb perché inserisca i commenti in un db preventivamente creato anziché in un file; in questo modo dovresti poter replicare dovunque il tuo gb originale senza l'uso di iframe né di pagine nascoste.

Teoricamente dovresti poter gestire i commenti da entrambi i pannelli di controllo dei due siti, ma é possibile che il programma ti mostri i gb nel pannello di controllo online solamente se vengono creati mediante l'oggetto gb e quindi inventariati nel progetto come tali; in questo caso potresti gestire i commenti solamente dal pannello di controllo del primo sito.

Bisogna provare;  facci sapere, e magari metti un link al sito per farci vedere quel che fai buon lavoro!

Lire plus
Posté le de Fabio B.
Fabio B.
Fabio B.
User
Fabio Bevilacqua
Teoricamente dovresti poter gestire i commenti da entrambi i pannelli di controllo dei due siti, ma é possibile che il programma ti mostri i gb nel pannello di controllo online solamente se vengono creati mediante l'oggetto gb e quindi inventariati nel progetto come tali; in questo caso potresti gestire i commenti solamente dal pannello di controllo del primo sito.

in realtà mi viene in mente una soluzione anche per questo problema ma non voglio mettere troppa carne al fuoco per non confonderti; se provi il metodo e funge poi ci divertiamo a manomettere un oggetto gb originale nel file di progetto. Ciao

Lire plus
Posté le de Fabio B.
 lemonsong  
 lemonsong  
User
Marco V.
Ho provato a modificare manualmente i settings ma senza riuscirvi ..... esiste un modo.

Con iframe risolvi in modo veloce ma, visto che hai provato a smanettare nel codice php, guarda questo esempio:

http://lemonsong.altervista.org/test_guestbook_condiviso/

Qui trovi i codici inseriti nel sito "copia" (verde):

http://lemonsong.altervista.org/test_guestbook_condiviso/sito-verde/pagina-1.html

I CSS li puoi "recuperare" dal css di pagina della pagina contenente il guestbook originale (sito blu).

Stessa cosa per il codice HTML/PHP: le uniche due righe che devi modificare sono quelle commentate.

Lire plus
Posté le de  lemonsong  
Fabio B.
Fabio B.
User

Grazie mille, come al solito, a Lemonsong e Stesil per le utilissime e necessarie correzioni

PS: riguardo alla gestione dei commenti da pannello di controllo online, funge anche nel sito copia? Cioé si vedono i commenti con id _x5gb51?

Lire plus
Posté le de Fabio B.
 lemonsong  
 lemonsong  
User

Ovviamente no e non vedo il senso di avere la gestione dello stesso file su più pannelli di controllo.

Dimenticavo: l'esempio è fatto con la 11 ed ovviamente può essere migliorato.

Lire plus
Posté le de  lemonsong  
Fabio B.
Fabio B.
User

Lo sospettavo.

Sull'utilità del doppio pannello però non sono d'accordo.

Può servire o non servire in base ai singoli casi.

In generale, tu puoi insegnarmelo, diversificando il pannello di controllo si diversificano anche i privilegi di amministrazione.

Uno può voler riservare a sé stesso la totalità delle facoltà di amministrazione in qualità di titolare/webmaster del sito principale (anche iscrizioni, carrello e blog), concedendo invece ad altre persone solo i diritti di gestione di alcuni oggetti in modo condiviso (guestbook ed oggetto dinamico presenti nel sito principale; il primo via pannello di controllo dedicato per scremare i commenti autonomamente; il secondo via login sul sito).

Paradossalmente in alcuni casi la creazione di un sito secondario con lo stesso gb potrebbe proprio servire esclusivamente allo scopo di avere un secondo pannello di controllo dei commenti da consegnare ad un'altra persona; cioé l'esistenza del sito secondario potrebbe avere la diversità dei privilegi come unica finalità.

Esempio pratico:

io creo un sito editoriale di poesia/prosa in cui tutti gli iscritti possono leggere i testi pubblicati da alcuni iscritti paganti, i quali pubblicano i loro testi in un numero di pagine soggettivamente acquistato e liberamente gestite nei contenuti; ogniuna di queste pagine corrisponde ad una vetrina in cui gli autori inseriscono i loro testi mediante un oggetto dinamico e li accompagnano ad un modulo gb con lo scopo di ricevere un feedback di riscontro dai lettori.

Il gestore del sito principale non può incaricarsi di tenere sotto controllo l'inserimento dei commenti verso tutti gli autori; quindi cede il controllo di questi ai singoli autori inserendo nel gb un avviso al loro indirizzo email quando ne viene inserito uno.

In realtà questo é esattamente un sito che pensavo proprio di realizzare, ma ancora non so se inserire anche il pagamento di alcuni servizi o fare tutto gratis per aumentare le speranze di successo del sito.

Ecco perché prima o poi farò una prova non solo con db, ma anche con due moduli gb originali gemelli su siti distinti.

Lire plus
Posté le de Fabio B.
Fabio B.
Fabio B.
User

Pensandoci bene...alla fine quest'ultima é la soluzione migliore in tutti i sensi, anche per praticità di realizzazione, perché persino senza andare a pasticciare manualmente nel file project.xml del sito-copia, basta duplicare realmente il sito originale via programma con un url di caricamento diverso.

Nel caso di Marco V., lui dovrà soltanto cambiare il template con uno mobile ed adattare i contenuti al nuovo layout delle varie pagine.

Nel mio caso invece mi basterà cancellare dal sito-copia tutto tranne il/i gb inserito/i nella index e correlato/i al/ai gb originale/i via db.

Lire plus
Posté le de Fabio B.
Marco V.
Marco V.
User
Auteur
 lemonsong  
Marco V. Ho provato a modificare manualmente i settings ma senza riuscirvi ..... esiste un modo. Con iframe risolvi in modo veloce ma, visto che hai provato a smanettare nel codice php, guarda questo esempio: http://lemonsong.altervista.org/test_guestbook_condiviso/ Qui trovi i codici inseriti nel sito "copia" (verde): http://lemonsong.altervista.org/test_guestbook_condiviso/sito-verde/pagina-1.html I CSS li puoi "recuperare" dal css di pagina della pagina contenente il guestbook originale (sito blu). Stessa cosa per il codice HTML/PHP: le uniche due righe che devi modificare sono quelle commentate.

In primis ringrazio tutti per l'ausilio offertomi.

Per quanto riguarda la modifica del file php (strada percorsa all'inizio), risulta corretta (come mostrato da lemonsong) quando i "siti" si trovano nella stessa site root folder ossia:

http://miosito.it/guestbook1.php e http://miosito.it/gb-condivido/guestbook2.php

Ma non funziona se i siti e quindi anche i relativi guestbook si trovano su due domini indipendenti ossia:

http://mobile.miosito.it/guestbook1.php e http://desktop.miosito.it/guestbook2.php

non riesco a caricare (loadXML) il file xml dei commenti nonostante si trovi su una cartella con tutti i permessi necessari.

Lire plus
Posté le de Marco V.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator
Meilleur utilisateur du mois ESMeilleur utilisateur du mois PT
Marco V.
... ... ... Ma non funziona se i siti e quindi anche i relativi guestbook si trovano su due domini indipendenti ossia: ... ... ...

... secondo me dovrebbe dipendere dagli URL in uso per relazionarsi al file PHP attivo, ...e questo dovrai valutarlo tu, più che altro per tua soddisfazione personale e per ottenere nel modo che credi...

... sempre secondo me, forse e se provavi, avresti potuto risolvere un paio di minuti dopo la prima risposta ricevuta l'anno scorso, e senza rompimenti di capo...

.

ciao

Lire plus
Posté le de  ‪ KolAsim ‪ ‪