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

    Prime armi con i cookie

    ciao...sono alle prime armi con i cookie...sto facendo un semplicissimo contatore che sfrutta i cookie....ed è questo

    codice:
    <?
    	$var=@fopen("contatore2.txt",'r');
    	
    	$leggi=@fread($var,filesize("contatore2.txt"));
    	@fclose($var);
    	
    	setcookie("contatore","1");
    	
    	if($HTTP_COOKIE_VARS[contatore] != 1){
    	
    		if ($leggi==null){
    			$leggi=1;
    		}
    		else{
    			$leggi=$leggi+1;
    		}
    	}
    	
    	$var=@fopen("contatore2.txt",'w');
    	
    	@fwrite($var,$leggi);
    	
    	@fclose($var);
    	
    	echo ($leggi);
    	
    ?>
    mi da il seguente errore:

    Notice: Use of undefined constant contatore - assumed 'contatore' in c:\programmi\easyphp1-8\www\count\count2.php on line 9

  2. #2
    Quell'errore si verifica quando usi una costante senza averla dichiarata con define(). Di default php in questi casi lancia una warning e poi dichiara implicitamente la variabile assegnandole come valore il nome che le è stato definito nel tuo caso quindi la costante si chiamerà contatore e conterrà anche la stringa "contatore".
    Come risolvere il problema? Ci sono tre cause scopri quale è la tua e risolvilo:

    1 hai effettivamente dimenticato di definire la costante usa quindi define("contatore","valore che gli vuoi dare se è numerico ometti le virgolette");

    2 è una variabile a cui hai dimenticato di mettere un $ davanti. Metticelo.

    3 è una stringa costante che hai utilizzato senza le virgolette, quindi metti le virgolette!

    nel tuo caso mi sembra che sei nel punto 3 (ammesso che ho capito bene la riga dell'errore).

    if($HTTP_COOKIE_VARS[contatore] != 1){

    diventa

    if($HTTP_COOKIE_VARS["contatore"] != 1){

    e già che ci sei fai una bella modifica visto che HTTP_COOKIE_VARS non si usa +:

    scrivi così:

    if($_COOKIE["contatore"] != 1){
    I dilettanti costruirono l'Arca, i professionisti il Titanic!

  3. #3
    cavolo che errore...! scusate...cmq...come faccio a vedere se esiste il cookie xxx ....?

  4. #4
    se nn mi sono spiegato bene....come si fa a verificare l'esistenza di un cookie..?

  5. #5

  6. #6
    I cookie sono contenuti nell'array $_COOKIE["nomevar"]. La verifica la effettui con isset().
    I dilettanti costruirono l'Arca, i professionisti il Titanic!

  7. #7
    Originariamente inviato da marste881
    up
    senti, quando ti funge, lo posteresti??
    Io ho fatto un contatore, ma senza cookie va all'impazzata!
    Main: Asus P5KR | Intel Q6600 G0 @ 3.6GHz | Kingston 2x1GB DDR-II @ 800MHz | POV GeForce 8800GT 512MB | Seagate Barracuda 7200.11 32MB 2x500GB RAID0 | Enermax Chakra 3052BS | Enermax Liberty 500W | Zerotherm Nirvana NV120 Premium || eee PC || Net: Atlantis Land WebShare 340 | Alice 19M/1M || Gentoo Linux | gtk-gnutella rulezz.

  8. #8
    il contatore con i cookie è questo
    codice:
    <?
    	$var=@fopen("contatore.txt",'r');
    	
    	$leggi=@fread($var,filesize("contatore.txt"));
    	@fclose($var);
    	
    	if(isset($_COOKIE["contatore"]) == false){
    			setcookie("contatore","1");
    	}else{
    			if($_COOKIE["contatore"] != 1){
    					if ($leggi==null){
    						$leggi=1;
    				}else{
    						$leggi=$leggi+1;
    									}
    			}
    	}
    	
    	$var=@fopen("contatore.txt",'w');
    	
    	@fwrite($var,$leggi);
    	
    	@fclose($var);
    	
    	echo ($leggi);
    	
    	
    	
    ?>
    ma credo c sia qualcosa di sbagliato...se qualcuno trova l'errore...

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.