Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: Adult Content

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2022
    Messaggi
    7

    Adult Content

    Buongiorno, premesso che non so programmare in php, vi dico di cosa sono in cerca.
    Ho uno spazio web in cui ho caricato uno script php, è un sito per adulti, al momento in modalità manutenzione.
    Ho cercato su internet un codice che mi permetta di far apparire un popup o comunque una pagina di pre-ingresso in cui si chieda all'utente di accettare o meno i contenuti del sito, ma non sono riuscita nell'impresa.
    Fosse stato un sito Wordpress, avrei risolto con un plugin, ma così non è.
    Se qualcuno conoscesse uno script o un codice da implementare nel sito, potrebbe suggerirmelo?
    Grazie mille a tutti.

    Avevo trovato questo navigando su internet, ma non funziona bene, o meglio, mi fa vedere la pagina di verifica dell'età e mi fa entrare o uscire dal sito in base alla scelta, ma poi crea problemi con i link del pannello admin del sito per esempio, che non funzionano.

    Questo l'ho inserito nell'index del sito:

    Codice PHP:
    //Start the session
    session_start();

    /*
    * If they haven't passed the age test
    * then the age_verified session will not
    * be set, since it is only set if they
    * say they are 21 years of age.
    */
    if(!isset($_SESSION['age_verified'])){
    header("Location: verify.php");
    exit;

    Questa è la pagina di verifica:

    codice:
    <html>
    
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    <title>Nuova pagina 1</title>
    </head>
    <body style="background-attachment: fixed" text="#FFFFFF" bgcolor="#CC0099">
    <h2 style="text-align: center;"></h2>
    <h2 style="text-align: center;">&nbsp;</h2>
    <h2 style="text-align: center;">&nbsp;</h2>
    <h2 style="text-align: center;">
    <font color="#FFFFFF" face="Cooper Std Black" size="6"><strong>ATTENZIONE!!</strong></font></h2>
    <h3 style="text-align: center;">
    <font color="#FFFFFF" face="Calibri Light" style="font-size: 16pt"><strong>Questo sito contiene immagini e contenuti rivolti ad un pubblico adulto ed &egrave; accessibile solo a persone che abbiano raggiunto la maggiore et&agrave;&nbsp; prevista dalla legge dal Paese dal quale si accede al sito.</strong></font></h3>
    <h3 style="text-align: center;">
    <font color="#FFFFFF" face="Calibri Light" style="font-size: 16pt"><strong>Gli inserzionisti devono rispettare i nostri standard di et&agrave;&nbsp; e contenuti nei propri annunci.</strong></font></h3>
    <h3 style="text-align: center;">
    <font color="#FFFFFF" face="Calibri Light" style="font-size: 16pt"><strong>MioSito ha una politica di tolleranza zero nei confronti della pornografia infantile, della pedofilia e nei confronti dei minori che tentassero di pubblicizzarsi attraverso il nostro sito. Qualsiasi attivit&agrave;&nbsp; riguardante tali reati verr&agrave;&nbsp; denunciata alle autorit&agrave;&nbsp; competenti.</strong></font></h3>
    <h3 style="text-align: center;">
    <font color="#FFFFFF" face="Calibri Light" style="font-size: 16pt"><strong>Accedendo a questo sito Web, dichiari di essere maggiorenne e di accettare le Condizioni d'uso e di esonerare MioSito da qualsiasi responsabilit&agrave;&nbsp; derivante dall'uso del sito.</strong></font></h3>
    <h3 style="text-align: center;">
    <center><form method="POST" action="/ageCheck.php">
    <input type="submit" name="valid_age" value="HO 18 ANNI" />
    <input type="submit" name="invalid_age" value="Ho Meno di 18 Anni" />
    </form></center>
    </body>
    </html>
    Questo è ageCheck.php:

    Codice PHP:
    <?php
    //Start session
    session_start();

    /*
    * First, we want to make sure they came to this ageCheck.php via a form.
    * Then we can check to see if $_POST['valid_age'] is set, since it will only
    * be set if they pressed the "I'm 21" button.
    */
    if(isset($_POST)){
    if(isset(
    $_POST['valid_age'])){
    /*
    * Since they got here, it means they are of the right age.
    * Now we set the session value.
    */
    $_SESSION['age_verified'] = true;
    header("Location: index.php");
    exit;
    }else{
    /*
    * To young! Just re-direct them to Google.
    */
    header("Location: http://www.google.com");
    exit;
    }
    }else{
    die(
    "Trying to sneak in are we?");
    }

    ?>

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2008
    Messaggi
    1,317
    assicurati che session_start() non sia definita da nessun'altra parte prima o che non venga inserita due volte di fila, perchè se lo è non è necessaria.
    O la togli dopo e la metti prima, o metti il codice dopo la prima chiamata.
    Logiqo.org gestionale per perizie infortunistiche.

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2022
    Messaggi
    7
    Grazie per la risposta, ma non no capito cosa dovrei fare concretamente, devo toglierla dal primo file, quello che va inserito in index.php o dall'ultimo ageCheck.php?
    O dovrei verificare se si trova già nel file index.php dove vado ad inserire il codice:
    Codice PHP:
    //Start the session
    session_start();

    /*
    * If they haven't passed the age test
    * then the age_verified session will not
    * be set, since it is only set if they
    * say they are 21 years of age.
    */
    if(!isset($_SESSION['age_verified'])){
    header("Location: verify.php");
    exit;




  4. #4
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,812
    @elena31

    ricorda di usare i tag CODE e/o PHP per postare codice sul forum

    buon lavoro

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2022
    Messaggi
    7
    Ok, grazie

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2008
    Messaggi
    1,317
    Guarda nel dubbio togli proprio:
    //Start the session
    session_start();

    dai due file

    e sostituisci:
    codice:
    if(!isset($_SESSION['age_verified'])){
    con
    codice:
    if (empty($_COOKIE['age_verified'])){
    e
    codice:
    $_SESSION['age_verified'] = true;
    con
    codice:
    set_cookie('age_verified', 'ok', time()+2678400);
    così da utilizzare un cookie al posto della sessione ed evitare problemi di compatibilità nel caso ci siano differenti 'session_start()' nell'applicazione
    Logiqo.org gestionale per perizie infortunistiche.

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    192
    Una header "intestazione" (Set-Cookie: nome=valore; o Cookie: nome=valore; o qualsiasi che usa header o setcookie o setrawcookie è una header) non necessita di output nemmeno su schermo: di tag HTML o più in generale output su schermo prima della sua chiamata. Anche la funzione session_start() crea un Set-Cookie e quindi lo si deve inserire dove non esiste output.
    L'eccezione esiste se output_buffering è impostato su on (o più aggiornato con valore in BYTES) evitando che l'output su schermo appaia prima di una header ma non nel caso di session_start() e questa funzione crea o recupera i dati memorizzati di default su file nel proprio percorso filesytem e se corrisponde con la richiesta HTTP crea o recupera attraverso la variabile $_SESSION

    Se non sbaglio >= php 5.6 sebbene non sintatticamente corretto è possibile usufruire della funzione session_start() più volte e il codice php interno lo scarta dopo la prima volta poiché la sessione è attiva (per lo stesso file non per più richieste http che può generare conflitti)
    Ultima modifica di darbula; 24-11-2022 a 10:51

  8. #8
    Utente di HTML.it
    Registrato dal
    Oct 2022
    Messaggi
    7
    Ok grazie, provo e ti faccio sapere.

  9. #9
    Utente di HTML.it
    Registrato dal
    Oct 2022
    Messaggi
    7
    Ciao, riprovato ad utilizzarlo così com'è e come prima, non funziona, effettuata la scelta il link di registrazione ed altri non funzionano.
    Ho provato come hai detto tu:

    Inserito del file index.php

    Codice PHP:
    <?php
    /** If they haven't passed the age test* then the age_verified session will not* be set, since it is only set if they* say they are 21 years of age.*/if (empty($_COOKIE['age_verified'])){header("Location: verify.php");exit;}
    il resto continua con il codice del file.

    Poi ho modificato anche ageCheck.php:

    Codice PHP:
    <?php
    /** First, we want to make sure they came to this ageCheck.php via a form.* Then we can check to see if $_POST['valid_age'] is set, since it will only* be set if they pressed the "I'm 21" button.*/if(isset($_POST)){if(isset($_POST['valid_age'])){/** Since they got here, it means they are of the right age.* Now we set the session value.*/set_cookie('age_verified''ok'time()+2678400);header("Location: index.php");exit;}else{/** To young! Just re-direct them to Google.*/header("Location: http://www.google.com");exit;}}else{die("Trying to sneak in are we?");}
    ?>
    si apre la pagina di verifica anche in questo caso, ma quando clicco su "HO 18 ANNI" si apre ageCheck.php invece del sito ed appare quanto segue:

    Questa pagina non funziona in questo momento

  10. #10
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    192
    @elena31 hai letto il mio messaggio precedente? So per certo che può sembrare difficile da capire ma con il senno di poi ci riesci.
    Codice PHP:
    <?php
    ini_set
    ('output_buffering'4096);
    // Commento a singola linea non interpretato dal parser php
    /* Commento a più linee non interpretato
    Nemmeno qui*/
    // Sto chiudendo il motore php
    ?>
    <html>
    <?php
    // Prima esiste output su schermo dal tag html <html>
    session_start();
    $_SESSION['test'] = 'Da php 7.1 e successivo la variabile Super Globale $_SESSION non inizializzata';
    var_dump($_SESSIONini_get('output_buffering')); // var_dump stampa su schermo
    ?>
    Ultima modifica di darbula; 24-11-2022 a 11:05

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.