Visualizzazione risultati 1 fino 15 di 15

Discussione: Cambiare messaggio a seconda del sito

  1. #1
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Question Cambiare messaggio a seconda del sito

    Salve a tutti.
    Non ho un esempio ma vi spiego ciò che vorrei fare.
    Vorrei creare una pagina (in php) che contiene due messaggi, e li cambia a seconda del sito madre che avrà inserito il frame di questa pagina.
    Quindi io creo una tabella (sul database) e scrivo dei siti.
    Se il sito madre fa parte dei siti della tabella mostro il messaggio 1.
    Se il sito madre non è scritto nella tabella, mostro il messaggio 2.

    Se ad esempio nel sito www.prova.it metto il codice <iframe src="www.esempio.it/pagina.php"></iframe> e il sito www.prova.it è messo nella tabella, verrà mostrato nel frame messaggio 1.
    Se il sito non è scritto nella tabella verrà mostrato il messaggio 2.
    Il file di connessione ce l'ho già.

    Credo che con un if ed un else si possa risolvere tutto...

    Grazie mille!
    Ultima modifica di radiodelmomento : 21-04-2011 alle ore 20.18.37

  2. #2
    L'avatar di binarysun
    binarysun non è connesso Utente storico
    Data registrazione
    02-07-2004
    Messaggi
    2,017

    Predefinito

    Non è così semplice come pensi.
    Lo script viene eseguito nell'iframe che di fatto è come un altra pagine del browser, non ha nessuna iterazione con la pagina che lo include.
    FORSE riusciresti a fare qualcosa con javascript (ma ho dubbi)
    "L'intelligenza è una pianta che va curata continuamente.
    Dovreste vedere com'è bello, il mio bonsai."
    Rat-man®

    [Gradient Text]
    [Su che server sei?]
    ->flickr

  3. #3
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    Grazie per la risposta, ma io ho posto questa domanda proprio per avere una risposta con la soluzione...
    Se si può fare qualcosa con javascript allora qual è il problema? Trovare qualcuno che se ne intende in javascript!

  4. #4
    L'avatar di binarysun
    binarysun non è connesso Utente storico
    Data registrazione
    02-07-2004
    Messaggi
    2,017

    Predefinito

    Citazione Originalmente inviato da radiodelmomento Visualizza messaggio
    Grazie per la risposta, ma io ho posto questa domanda proprio per avere una risposta con la soluzione...
    Se si può fare qualcosa con javascript allora qual è il problema? Trovare qualcuno che se ne intende in javascript!
    mmm
    Ripensandoci è possibile, ma non inserendo direttamente l'iFrame.
    Devi fare:
    -uno script javascript che legge l'url attuale
    -scrive nella pagina un iframe mettendo come src la tua pagina php passandogli come parametro l'url della pagina
    -Lo script PHP legerà il parametro via _GET e agirà di conseguenza

    Tenendo conto che non conosco molto javascript qualcosa tipo:

    Codice:
    <script language="JavaScript" type="text/javascript"> 
    function makeFrame() { 
       var url = window.location.href;
       var dest = "http://tuosito.it/pagina.php?pag=" + url;
       ifrm = document.createElement("IFRAME"); 
       ifrm.setAttribute("src", dest ); 
       ifrm.style.width = 640+"px"; 
       ifrm.style.height = 480+"px"; 
       document.body.appendChild(ifrm); 
    } 
    </script>
    E richiami la funzione con makeFrame() dove vuoi
    PS
    Probabilmente dovrai gestire il parametro url.
    Nella pagina PHP dovrai intercetare il parametro pag con GET e visualizzare il messaggio che vuoi.
    "L'intelligenza è una pianta che va curata continuamente.
    Dovreste vedere com'è bello, il mio bonsai."
    Rat-man®

    [Gradient Text]
    [Su che server sei?]
    ->flickr

  5. #5
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    Il codice PHP forse riesco a farlo se so:
    - come si fa a sapere in che pagina sono (ES.: $pagina_adesso = ???)
    - banale: come si fa a sapere se un testo è contenuto in un campo di una tabella del database

    Quindi farei:
    Codice PHP:
    <?php
    $pagina_adesso
    = SCRIPT PAGINA MOMENTANEA;
    if (
    $pagina_adesso != CONTENUTA NEL DB) {
    echo
    "Non hai i permessi!";
    }
    else
    {
    ?>
    CONTENUTO PAGINA
    <?php
    }
    ?>
    Giusto?
    Grazie.
    Ultima modifica di radiodelmomento : 22-04-2011 alle ore 15.20.05

  6. #6
    L'avatar di binarysun
    binarysun non è connesso Utente storico
    Data registrazione
    02-07-2004
    Messaggi
    2,017

    Predefinito

    Citazione Originalmente inviato da radiodelmomento Visualizza messaggio
    Il codice PHP forse riesco a farlo se so:
    - come si fa a sapere in che pagina sono (ES.: $pagina_adesso = ???)
    - banale: come si fa a sapere se un testo è contenuto in un campo di una tabella del database
    Se per "sapere in che pagina sono" intendi la pagina in cui è contenuto l'iFrame nel mio esempio ti passo l'url con la variabile "pag" quidni la leggi con un
    Codice PHP:
    $pagina_adesso = $_GET["pag"];
    Per quanto riguarda il DB....ti arrangi da solo, ti ho dato tutto ormai.
    "L'intelligenza è una pianta che va curata continuamente.
    Dovreste vedere com'è bello, il mio bonsai."
    Rat-man®

    [Gradient Text]
    [Su che server sei?]
    ->flickr

  7. #7
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    Non voglio sapere la pagina del frame, bensì (come dice il titolo) quella DOVE è contenuta il frame!

  8. #8
    L'avatar di binarysun
    binarysun non è connesso Utente storico
    Data registrazione
    02-07-2004
    Messaggi
    2,017

    Predefinito

    Citazione Originalmente inviato da radiodelmomento Visualizza messaggio
    Non voglio sapere la pagina del frame, bensì (come dice il titolo) quella DOVE è contenuta il frame!
    Ciccio.it/index.html include il tuo script che contiene un iFrame che punta a puppa.com/pagina.php

    La variabile che ti passo è Ciccio.it/index.html, OVVIAMENTE.
    "L'intelligenza è una pianta che va curata continuamente.
    Dovreste vedere com'è bello, il mio bonsai."
    Rat-man®

    [Gradient Text]
    [Su che server sei?]
    ->flickr

  9. #9
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    Questo sistema dovrebbe essere anti-hacker, quindi dovrei mettere il codice nel frame che loro inseriranno nel sito. Quindi se si sono registrati, potranno inserirlo, altimenti comparirà un messaggio di errore.

  10. #10
    L'avatar di binarysun
    binarysun non è connesso Utente storico
    Data registrazione
    02-07-2004
    Messaggi
    2,017

    Predefinito

    No, tutti inseriranno lo stesso codice, che creerà un iframe.
    La pagina che caricheranno leggerà la "provenienza" e deciderà se continuare a caricare o restituire un messaggio d'errore.
    "L'intelligenza è una pianta che va curata continuamente.
    Dovreste vedere com'è bello, il mio bonsai."
    Rat-man®

    [Gradient Text]
    [Su che server sei?]
    ->flickr

  11. #11
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    Il codice sarà php?
    Dato che molti siti non avranno le pagine in php, forse è meglio mettere un iFrame che manda alla pagina in php.

  12. #12
    L'avatar di binarysun
    binarysun non è connesso Utente storico
    Data registrazione
    02-07-2004
    Messaggi
    2,017

    Predefinito

    La tua domanda iniziale era come sapere dentro la pagina richiamata da un iframe in che pagina era stato inserito questo iFrame.
    Ora parli di sistema anti-hacker.
    E' chiaro che non vuoi parlare in modo approfondito di quello che vuoi fare... ma in questo modo non ti si può aiutare.

    DETTO QUESTO
    FIN dall'inizio io parlo di un iframe che PUNTA ad una TUA pagina php
    "L'intelligenza è una pianta che va curata continuamente.
    Dovreste vedere com'è bello, il mio bonsai."
    Rat-man®

    [Gradient Text]
    [Su che server sei?]
    ->flickr

  13. #13
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Lightbulb

    È che non voglio violare il regolamento facendo vari nomi...
    Allora:
    io ho un sito di una radio, e ho una pagina con una classifica, che sarebbe /vot/vota.php.
    Adesso vorrei far mettere questa chart ad altri siti gratis, ma con un piccolo link che manda al mio sito.
    Vorrei sapere quali siti sono iscritti così da poter vedere il tipo di sito (ad esempio a siti illegali non do l'autorizzazione).
    Quindi se il sito va bene, lo inserisco nel db, sennò niente.

    ----------
    ESEMPIO: c'erano una volta tre siti, "www.1.it", "www.2.it" e "www.3.it".

    Nel sito www.1.it c'è la mia classifica.

    Il sito www.2.it (illegale) vuole mettere la mia classifica. Quindi me lo richiede e io NON gli do il codice.

    Il sito www.3.it (legale) vuole mettere la mia classifica. Quindi me lo richiede e io gli do questo codice:
    Codice HTML:
    <iframe src="http://MIO_SITO.altervista.org/vot/vota.php" with="500" height="700"></iframe>
    E da lui funziona.

    Il proprietario del sito www.2.it, vede il sito www.3.it e trova la famosa classifica. Quindi si prende il codice di prima e se lo mette nel suo sito, ma... qualcosa non funziona! EVVIVA! Ehm... magari!
    ----------

    Così è come dovrebbe andare.
    Se hai dubbi dimmi pure!
    Ultima modifica di radiodelmomento : 22-04-2011 alle ore 20.46.21

  14. #14
    L'avatar di binarysun
    binarysun non è connesso Utente storico
    Data registrazione
    02-07-2004
    Messaggi
    2,017

    Predefinito

    Quindi un widget accessibile solo da alcuni siti.
    Mumble mumble
    Non è un sistema sicuro ma dovrebbe fare al caso tuo.

    Fai come ti ho detto.
    Prima usa lo script sopra, e come url metti la tua pagina
    Codice:
    <script language="JavaScript" type="text/javascript"> 
    function makeFrame() { 
       var url = window.location.href;
       var dest = "http://MIO_SITO.altervista.org/vot/vota.php?pag=" + url;
       ifrm = document.createElement("IFRAME"); 
       ifrm.setAttribute("src", dest ); 
       ifrm.style.width = 640+"px"; 
       ifrm.style.height = 480+"px"; 
       document.body.appendChild(ifrm); 
    } 
    makeFrame();
    </script>
    Nello script vota.php, intercetti la variabile "pag" che sia nella lista dei siti consentiti.

    Poi usi questo programma
    http://www.javascriptobfuscator.com/default.aspx
    Ed offuschi il contenuto dello script rendendolo semi-illeggibile.

    Poi dai lo script a chi vuoi e sei a posto.
    Ovviamente però se uno sa la pagina e che variabile passare sei fregato.
    Potresti aggiungere qualche codice di controllo per fregarli(tipo un hash della url), ma dovresti anche saperne di javascript
    "L'intelligenza è una pianta che va curata continuamente.
    Dovreste vedere com'è bello, il mio bonsai."
    Rat-man®

    [Gradient Text]
    [Su che server sei?]
    ->flickr

  15. #15
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    Invece potrei mettere nella pagina vota.php (che poi rinominerò e metterò un nome che nemmeno io ricorderò) questo:
    Codice PHP:
    <?php
    $proviene
    =basename($_SERVER['HTTP_REFERER']);
    $pagina=explode($proviene);
    if(
    $pagina[0] != "contenente_script.php"){
    echo
    "Non hai i permessi!";
    }else
    {
    ?>
    CONTENUTO PAGINA
    <?php
    }
    ?>
    Ma qual è lo script che mi hai messo sopra? Non è uguale? o.O
    Poi non capisco cosa intendi per vota.php?pag=
    Codice HTML:
    var dest = "http://MIO_SITO.altervista.org/vot/vota.php?pag=" + url;
    La pagina è una vota.php, oppure vuoi fare che ogni sito ha una sua pagina vota.php? :-)

    Grazie, ciao!
    Ultima modifica di radiodelmomento : 23-04-2011 alle ore 10.45.26

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •