Redirect Dinamico a Pagina Ingresso Utente ($userpage)
Autor: Stiac EngineeringSalve ragazzi,
in vecchie versioni si poteva sfuttare la pagina di accesso (imlogin.php) per indirizzare automaticamente l'utente nella pagina d'ingresso dedicata ($userpage), ovvero quella che si può impostare nel pannello di gestione accessi, diversa per ogni utente.
Purtroppo tale funzione è stata deprecata senza alcun motivo ne avviso a discapito di chi usava tale funzione per poter fornire all'utenza un sito il più possibile dinamico.
Vorrei domandare un aiuto per poter ripristinare tale funzionalità con del codice extra, tuttavia non so come e dove poter mettere mano.
Secondo voi è possibile impostare un redirect PHP direttamente nella pagina di login (imlogin.php)? Ovvero se l'utente risulta loggato far si che questo venga reindirizzato a "$userpage"?
Ringazio per l'aiuto.
?
non mi risulta...
se tu in gestione accessi all'utente specifichi la pagina di atterraggio ... funziona ancora , che io sappia, ...
ma sei sicuro che non funziona più ?
adesso provo e ti dico...
Fatto una prova ora e funziona, se ho capito bene la richiesta.
Utente A->Pagina A
Utente B->Pagina B
Lo imposti in gestione accessi--->Utente--->Pagina d'ingresso
Autor
A meno che non sia uscito matto, cosa altamente probabile, tempo fa ne avevamo parlato insieme.
In poche parole, era la pagina imlogin.php a reindirizzare automaticamente l'utente alla pagina dedicata, mentre oggi se un utente già loggato va in imlogin.php rimane li in un punto "morto".
Prima bastava mettere un collegamento link alla pagina di accesso (automatica) ed era la stessa pagina imlogin che smistava / indirizza automaticamente l'utente.
Ho simulato ora quello che dici e ho capito la situazione, secondo me non serve una redirect ma l'inibizione del pulsante/pagina di login una volta che l'utente si è loggato.
Autor
Forse potrebbe risolvere.
Io avevo pensato di ripristinare direttamente la funzione deprecata e usare nei collegamenti link direttamente imlogin.
infatti come dicevo... provato ed a me pure funziona ...
ah ok... quello , mi pare di ricordare anche io qualcosa in passato...
devo fare due prove... appena riesco
Basterebbe che nello stesso modo del logout che appare nel momento che ti logghi sparisse il login.
...ma credo che Gabriele inoltri alla pagina imlogin ... e quindi per quello ha la necessità...
Autor
Buongiorno a tutti! Corretto Claudio, uso la pagina come nodo.
O intervengo sulla pagina /imlogin.php o devo crearne una di "servizio" con la funzione deprecata.
Avevo pensato di scaricare la versione 16 e cercare di estrapolare dal codice tale funzionalità, ma ho solo fatto pasticci.
... perchè non produci un semplice e leggero esempio online (senza contenuti), con le pagine per le due/tre condizioni e postando le relative pass/user per i test reali... ?...
.
Autor
Buongiorno KolAsim! Intendi con la v2020.3 o con quelle in cui era presente la funzione?
... lo sai tu dove ti interessa agire...
Autor
Ho provato a spulciare le vecchie versioni ma non ho trovato "userpage", tuttavia mi pare che questo possa fungere:
Mi sbaglio o il codice dovrebbe indirizzare l'utente alla pagina d'ingresso personale?
Autor
Ragazzi chiederei un feedback.
Se voi aprite la pagina /imlogin.php in browser con cronologia pulita, vi si apre la pagina dedicata dopo aver effettuato l'accesso?
Perché io al momento ricevo una pagina di errore:
Autor
Risolto questo aspetto. Forse c'è un problemino quando l'utente viene inserito in gestione utenti direttamente da software.
Detto ciò, ora stavo provando a modificare il codice gentilmente messo a disposizione da MAeSI qui (http://quellidelcucuzzolo.blogspot.com/2017/05/menu-utente-loggato-website-x5.html).
Quel menu di fatto ha il link univoco per ogni utente, tuttavia dovrei a creare un redirect PHP.
Online ho trovato in aggiunta questo. Ma non funziona.
Autor
Update 2.
Sono riuscito a ricreare una sorta di pagina di redirect. Sempre se il sonno non mi gioca allucinazioni.
È rudimentale, ma pare funzionare. Vi allego il file.
Potete testare online su https://www.stiac.it/userarea.php
Autor
Eventuali suggerimenti e consigli / aiuto, sono sempre graditi.
Ciao. Dopo la registrazione, convalida della mia mail e successivo login, sono "atterrato" su questa pagina:
Autor
Buonasera Giuseppe! Grazie per il gentile riscontro.
Sì è corretto. La pagina /my-account.php è quella standard per gli utenti che viene impostata di default, editabile poi da Gestione Utenti.
Adesso se premi l'icona nell'header puoi notare che vieni portato direttamente alla pagina dedicata, mentre prima ti veniva richiesto di effettuare l'accesso anche se già loggato.
Con il codice postato ho notato che c'è un piccolo delay così ho pensato di modificare il refresh con header('Location: '.$userpage );.
Dovrebbe essere lievemente più veloce, tuttavia non so se ci potrebbero essere problemi di compatibilità.
Link /user-area.php
In parole povere funziona da switching:
Se l'utente ha già effettuato l'accesso lo direziona verso la sua pagina d'ingresso (es. LandingPage.php), mentre se non è loggato lo porta alla pagina di accesso.
Tutto ciò va a risolvere il potenziale vicolo cieco che si crea quando si hanno più pagine d'ingresso per i vari utenti se si usa la pagina imlogin.php.
Se non sbaglio si potrebbe inserire direttamente nella pagina /imlogin.php ma non ho verificato.
In tutto ciò devo ringraziare Giorgio C. e MAeSI per il loro utilissimo codice e spero possa servire ad altri utenti.
Grazie mille.
Gabriele da Pc ora vedo così e anche con il refresh della pagina nulla...
Anzi, nello screenshot non si vede ma la mia mail sopra "guidagiuseppe70(@)gmail.com" si alterna velocemente alla scritta "***" ma senza che appare nessuna immagine dell'avatar, appare un segnaposto di immagine mancante. questo alternarsi tra l'una e l'altra scritta è veloce e sembra che la pagina sia in continuo caricamento di contenuti ma in realtà non carica mai nulla.
Autor
Hai provato a eliminare la cronologia?
Autor
Io da PC vedo quella pagina per pochi secondi.
Ho eliminato le funzioni superflue commentandole. Prova con http://stiac.it/lol.php .
OK, se provo da qui http://stiac.it/lol.php vengo reindirizzato qui...
Autor
Allora ci deve essere un bug. A me porta alla pagina.
Prima ricevevo error -4 ma eliminato la cronologia si è risolto. L'errore che ottieni tu in genere è dato quando perde i dati della pagina d'ingresso. Almeno questo è ciò che so.
Giusto per feedback, succede anche se premi l'icona a forma di utente nell'header?
Scusami se non ti ho risposto prima...
Dall'ultimo link che mi hai inviato, anche se pulisco la cronologia, al click atterro su questa pagina e mi dà errore...
Ora dal tuo ultimo link ( http://stiac.it/lol.php ), facendo altre prove, non mi appare più nessuna pagina, la finestra è bianca e la pagina sembra che carichi all'infinito...
Autor
Buona sera Giuseppe,
come sempre ti ringrazio per il tempo e preziosi feedback.
È molto strano perché non ho messo mano ai files "di sistema" di website x5. L'unica cosa che ho fatto consiste nella creazione di una nuova pagina nella quale ho inserito il codice postato.
Questa pagina a sua volta ha lo scopo di portare l'utente alla propria pagina d'ingresso e nel caso non fosse loggato lo riporta alla pagina standard di accesso automatico.
A me segue così quando non sono loggato:
Mentre se sono loggato:
Ho provato sia con account normale che admin, ma non riesco a ricreare il tuo stesso errore. Ho visto che qualcuno ha avuto problemi con il reset della password, ma non so la causa.
Ho usato Goolge Chrome Versione 87.0.4280.88.
L'unica operazione effettuata oggi sul sito è stata una sorta di cron per un nuovo template e in admin i PASS sono tutti verdi.
Se clicco sul link sopra "nuova pagina" (che è anche il link n.1 postato da te), la pagina mi appare bianca e non carica nulla...
Autor
E cosa potrebbe causare questo problema?
Autor
Altri riscontrano tale problema?