Problemi redirect

di il
10 risposte

Problemi redirect

Ciao a tutti
mi chiamo Alessandro, sul mio sito web ho un link ad un file PHP che permette il redirect su delle app nei relativi store, in base al device, tutto funziona, ma quando dallo store di torna alla pagina web, la stessa risulta bianca,
c'è una soluzione ?


il file è questo:


<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<script>
function getMobileOperatingSystem() {
var userAgent = navigator.userAgent || navigator.vendor || window.opera;

if (/windows phone/i.test(userAgent)) {
return "Windows Phone";
}
if (/android/i.test(userAgent)) {
return "Android";
}
if (/iPad|iPhone|iPod/.test(userAgent) && !window.MSStream) {
return "iOS";
}
return "unknown";
}</script>

<script>
function DetectAndServe(){

if (getMobileOperatingSystem() == "Android") {
window.location.href = "xxxxxxxxxxxxxxxxxxx";
}
if (getMobileOperatingSystem() == "iOS") {
window.location.href = "xxxxxxxxxxxxxxxxxxx"
}
if (getMobileOperatingSystem() == "Windows Phone") {
window.location.href = "xxxxxxxxxxxxxxxxxxx";
}
if (getMobileOperatingSystem() == "unknown") {
window.location.href = "xxxxxxxxxxxxxxxxxxxx";}
};
</script>
</head>
<body onload="DetectAndServe()">
</body>
</html>



grazie mille per l'aiuto
Alex

10 Risposte

  • Re: Problemi redirect

    ante75 ha scritto:


    mi chiamo Alessandro, sul mio sito web ho un link ad un file PHP che permette il redirect su delle app nei relativi store, in base al device, tutto funziona, ma quando dallo store di torna alla pagina web, la stessa risulta bianca,
    c'è una soluzione ?
    Diciamo che non vedo il ruolo di PHP in questo scenario specifico, ad ogni modo la problematica è che il tuo redirect fa aprire un programma esterno dalla pagina, che appare normalmente vuota, quindi al termine dell'uso dello store viene visualizzato di nuovo il browser dove appare la stessa pagina bianca di partenza.

    Volendo potresti tentare di chiudere la pagina, ad esempio con un window.close();, oppure potresti mostrare una semplice scritta tipo "Puoi chiudere tranquillamente questa pagina dopo l'uso".

    Ciao!
  • Re: Problemi redirect

    Grazie per la risposta

    ho provato ma proprio non cambia, non si potrebbe impostare un timer che dopo qualche secondo riapre la
    pagina iniziale ?, così da lasciare il tempo al device di aprire lo store e poi il browser sulla pagina ?

    magari è una stupidata (anzi sicuro)
  • Re: Problemi redirect

    ante75 ha scritto:


    ho provato ma proprio non cambia, non si potrebbe impostare un timer che dopo qualche secondo riapre la
    pagina iniziale ?, così da lasciare il tempo al device di aprire lo store e poi il browser sulla pagina ?

    magari è una stupidata (anzi sicuro)
    Io non riesco comunque a capire come questo possa costituire un problema.
  • Re: Problemi redirect

    Mi spiego meglio,
    sulla nostra pagina il mio cliente clicca su scarica l'app, qualsiasi dispositivo lui abbia
    con quel file viene reindirizzato sullo store corretto (fin qui tutto bene).
    Se dallo store il cliente clicca indietro e torna sul browser trova una pagina bianca e non più il mio sito
    vorrei appunto che ritornando sulla pagina ritrovasse il sito
  • Re: Problemi redirect

    ante75 ha scritto:


    Se dallo store il cliente clicca indietro e torna sul browser trova una pagina bianca e non più il mio sito
    vorrei appunto che ritornando sulla pagina ritrovasse il sito
    Scusa, ma i link che portano allo store si trovano sul tuo sito, oppure su una pagina bianca e separata?
  • Re: Problemi redirect

    Il link punta al file php su uno spazio ftp, il file poi fa il redirect
  • Re: Problemi redirect

    ante75 ha scritto:


    Il link punta al file php su uno spazio ftp, il file poi fa il redirect
    Fai il redirect direttamente dal sito invece che da una pagina vuota.
  • Re: Problemi redirect

    Non posso farlo, il sito non è modificabile, ho il controllo solo sul file
  • Re: Problemi redirect

    ante75 ha scritto:


    Non posso farlo, il sito non è modificabile, ho il controllo solo sul file
    Io visualizzerei un messaggio nella pagina vuota indicando all'utente che può chiuderla tranquillamente, o che può tornare indietro, magari fornendo un link che faccia il "back" nella storia delle pagine visitate con un history.back(), andando così alla pagina precedente in automatico.

    In alternativa, potresti tentare di aprire il link dello store in una pagina nuova quando l'utente fa clic sul pulsante relativo, e dopo aver aperto la pagina in una nuova finestra/tab tornare indietro nella storia facendo un history.back().

    Ciao!
  • Re: Problemi redirect

    Grazie per l'aiuto,
    ho risolto in questo modo, dopo 3 secondi in modo asincrono chiamo la funzione goBack()




    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="utf-8" />

    <script>

    function getMobileOperatingSystem() {
    var userAgent = navigator.userAgent || navigator.vendor || window.opera;
    if (/windows phone/i.test(userAgent)) {
    return "Windows Phone";
    }
    if (/android/i.test(userAgent)) {
    return "Android";
    }
    if (/iPad|iPhone|iPod/.test(userAgent) && !window.MSStream) {
    return "iOS";
    }
    return "unknown";
    }

    function DetectAndServe(){
    const delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
    (async () => {

    if (getMobileOperatingSystem() == "Android") {
    window.location.href = "xxxxxxxxxxxxxxxxxxxxx";
    }
    if (getMobileOperatingSystem() == "iOS") {
    window.location.href = "xxxxxxxxxxxxxx";
    }
    if (getMobileOperatingSystem() == "Windows Phone") {
    window.location.href = "xxxxxxxxxxxxxxx";
    }
    if (getMobileOperatingSystem() == "unknown") {
    window.location.href = "xxxxxxxxxxxxx";}

    await delay(1000);
    goBack();

    })();

    };

    function goBack() {
    window.history.back();
    }

    </script>
    </head>
    <body onload="DetectAndServe()">
    </body>
    </html>
Devi accedere o registrarti per scrivere nel forum
10 risposte