Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Il cookie del sondaggio non funziona

    Salve ragazzi,
    spero possiate aiutarmi.
    Sto realizzando un sondaggio in PHP. Un amico mi ha aiutato a crearlo, fondamentalmente non utilizza DB ma si limita a sommare i voti su dei file txt che ho messo in una cartella di default del mio spazio su Aruba, chiamata "public". Abbiamo aggiungo del codice per fare in modo che, attraverso il cookie, venga permesso di votare una sola volta al giorno, ma non sta funzionando, permette di votare infinite volte. Provando i file su un altro server, Altervista, funziona tutto perfettamente, e al secondo tentativo di votazione non conteggia il voto e stampa il messaggio apposito, su Aruba no. Cercando nella loro community, purtroppo non frequentata come la vostra, ho trovato questa indicazione di un utente: "Il tuo dominio è un hosting Windows e qualsiasi header (i cookies sono trasmessi via headers HTTP) va inviato prima di qualsiasi output verso il browser". Ora, io non ne capisco granché e non so neppure se sia questa la soluzione. Secondo voi da cosa può dipendere? Vi passo il body del file risposte.php

    codice:
    <body>
      <?php
    if ($_GET["vota"] != "no" ){
    
    if (isset($_COOKIE['01'])) {
    
    print "<center><font>Attenzione, puoi votare solo ogni 24 ore dall'ultimo voto per ogni categoria. Riprova più tardi.</font></center>
    ";
    }
    else {
    
    setcookie ("01","votato",time() +86400,"/");
    
    $sondaggio = $_POST['sondaggio'];
    
    if ($sondaggio == "1") {
    
    $fileapri = fopen("files/1.txt","r");  
    	$count = fread($fileapri, 100);
    	$countplus = ($count + 1);
            fclose($fileapri);
    	$fileb = fopen("files/1.txt","w");
    	fwrite($fileb, $countplus, 100);
    	fclose($fileb);
    }
    
    
    else if ($sondaggio == "2") {
    
    $fileapri = fopen("files/2.txt","r");  
    	$count = fread($fileapri, 100);
    	$countplus = ($count + 1);
            fclose($fileapri);
    	$fileb = fopen("files/2.txt","w");
    	fwrite($fileb, $countplus, 100);
    	fclose($fileb);
    
    }
    
    
    else if ($sondaggio == "3") {
    
    $fileapri = fopen("files/3.txt","r");  
    	$count = fread($fileapri, 100);
    	$countplus = ($count + 1);
            fclose($fileapri);
    	$fileb = fopen("files/3.txt","w");
    	fwrite($fileb, $countplus, 100);
    	fclose($fileb);
    }
    
    
    else if ($sondaggio == "4") {
    $fileapri = fopen("files/4.txt","r");  
    	$count = fread($fileapri, 100);
    	$countplus = ($count + 1);
            fclose($fileapri);
    	$fileb = fopen("files/4.txt","w");
    	fwrite($fileb, $countplus, 100);
    	fclose($fileb);
    
    }
    
    
    else if ($sondaggio == "5") {
    
    $fileapri = fopen("files/5.txt","r");  
    	$count = fread($fileapri, 100);
    	$countplus = ($count + 1);
            fclose($fileapri);
    	$fileb = fopen("files/5.txt","w");
    	fwrite($fileb, $countplus, 100);
    	fclose($fileb);
    
    }
    
    echo "<center><font>Voto registrato. Prosegui con la prossima categoria.</font></center>
    ";
    }
    }
    ?>
    </body>

  2. #2
    Inserisci questo codice all'inizio della pagina:

    Codice PHP:
    <?php ob_start(); ?>

  3. #3
    Grazieeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee

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.