Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it L'avatar di thitan
    Registrato dal
    Feb 2001
    Messaggi
    716

    interazione javascript e cookie

    ciao, avrei bisogno che in una pagina php, cliccando su un'immagine, mi salvi nel cookie un dato, assolutamente senza il refresh della pagina...
    nel cookie dovranno essere immessi più valori..
    come posso fare?
    codice:
    [img]ciao.gif[/img]
    e volendo proprio fare gli sboroni, è possibile che una volta cliccato in cima, e aggiunto il valore nel cookie, mi cambi l'immagine?
    plz

    www.inter-rail.it
    travellers, not tourist
    Is cuma cá mhinice a théann tú ar strae; is é is tábhachtaí gurb áil leat do bhealach a aimsiú arís.

  2. #2
    Utente di HTML.it L'avatar di thitan
    Registrato dal
    Feb 2001
    Messaggi
    716
    up please

    www.inter-rail.it
    travellers, not tourist
    Is cuma cá mhinice a théann tú ar strae; is é is tábhachtaí gurb áil leat do bhealach a aimsiú arís.

  3. #3
    Utente di HTML.it L'avatar di thitan
    Registrato dal
    Feb 2001
    Messaggi
    716
    up please

    www.inter-rail.it
    travellers, not tourist
    Is cuma cá mhinice a théann tú ar strae; is é is tábhachtaí gurb áil leat do bhealach a aimsiú arís.

  4. #4
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    questo è un modo come un altro:

    Ho una pagina aspx (asp o php è lo stesso)

    Nella pagina ho una immagine che scatena l'evento click:

    <img onclick="crea_cookie();">

    dove la funzione crea_cookie fa una richiesta al server:

    codice:
    function crea_cookie()
    {
    	var im = new Image();
    	im.src = "./a.aspx?crea_cookie=1";
    	
    }
    In questo caso, richiamo la stessa pagina, passando un parametro per l'elaborazione server ed eventualmente altri parametri.

    Nel server verifico se ho ricevuto il parametro crea_cookie. Se l'ho ricevuto, creo il cookie

    codice:
    		private void Page_Load(object sender, System.EventArgs e)
    		{
    			// Inserire qui il codice utente necessario per inizializzare la pagina.
    			if(this.Request.QueryString["crea_cookie"] == "1")
    			{
    				this.Response.Cookies["proprieta"]["colore"] = "rosso";
    				this.Response.Cookies["proprieta"]["nome"] = "pietro";
    				this.Response.End();
    			}
    		}
    In questo caso il cookie scompare quando abbandono il sito: ma è semplice renderlo persistente :
    codice:
    this.Response.Cookies["proprieta"].Expires = DateTime.Parse("13/12/2005");



    In alternativa, è possibile scrivere il cookie senza scomodare il server, solo con javascript


    Oppure è possibile fare una chiamata tramite AJAX


    Oppure è possibile mandare la richiesta ad una pagina server tramite un iframe nascosto...

    Pietro

  5. #5
    Utente di HTML.it L'avatar di thitan
    Registrato dal
    Feb 2001
    Messaggi
    716
    si a me servrebbe senza una pagina esterna, tutto in js..una cosa del tipo
    codice:
    [img]ciao.gif[/img]
    dici che funziona?

    cioè cliccando sull'immagine 'rossa' mi scrive nel cookie 'rosso', se poi clico sulla 'blu' nel cookie avrò una cosa del tipo:
    rosso|blu|..e fin qui ci sono..
    il problema è che dopo, se riclicco sul rosso, mi deve rimuovere la stringa 'rosso|' dal cookie...
    e qui non ci sono..c'è una funzione, tipo str_replace() del php, che puù farlo?

    www.inter-rail.it
    travellers, not tourist
    Is cuma cá mhinice a théann tú ar strae; is é is tábhachtaí gurb áil leat do bhealach a aimsiú arís.

  6. #6
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    qui trovi quello che cerchi:
    http://forum.html.it/forum/showthrea...hreadid=780810

    o questo, dalla rete:
    codice:
    function getCookie( name ) {
    	var start = document.cookie.indexOf( name + "=" );
    	var len = start + name.length + 1;
    	if ( ( !start ) && ( name != document.cookie.substring( 0, name.length ) ) ) {
    		return null;
    	}
    	if ( start == -1 ) return null;
    	var end = document.cookie.indexOf( ";", len );
    	if ( end == -1 ) end = document.cookie.length;
    	return unescape( document.cookie.substring( len, end ) );
    }
    	
    function setCookie( name, value, expires, path, domain, secure ) {
    	var today = new Date();
    	today.setTime( today.getTime() );
    	if ( expires ) {
    		expires = expires * 1000 * 60 * 60 * 24;
    	}
    	var expires_date = new Date( today.getTime() + (expires) );
    	document.cookie = name+"="+escape( value ) +
    		( ( expires ) ? ";expires="+expires_date.toGMTString() : "" ) + //expires.toGMTString()
    		( ( path ) ? ";path=" + path : "" ) +
    		( ( domain ) ? ";domain=" + domain : "" ) +
    		( ( secure ) ? ";secure" : "" );
    }
    	
    function deleteCookie( name, path, domain ) {
    	if ( getCookie( name ) ) document.cookie = name + "=" +
    			( ( path ) ? ";path=" + path : "") +
    			( ( domain ) ? ";domain=" + domain : "" ) +
    			";expires=Thu, 01-Jan-1970 00:00:01 GMT";
    }
    Pietro

  7. #7
    Utente di HTML.it L'avatar di thitan
    Registrato dal
    Feb 2001
    Messaggi
    716
    grazie, ma non avendo praticamente nessuna esperienza nel js (riesco a malapena a cambiare il colore di un td...) non riesco a applicare bene quel poco che ho capito dagli esempi.. in poce parole io ho n°X di immagini, cliccando su una di esse il js dovrebbe salvarmi un valore nel cookie (diverso per ogni immagine) e cambiarmi l'immagine, mentre ricliccando sulla stessa immagine dovrebbe eliminarmi il valore dal cookie e rispristinarmi l'immagine iniziale.
    cioè dovrei "tradurre" in java un codice php del tipo:

    codice:
    <?
    if(isset($_COOKIE["dati"])){
      $dati=$_COOKIE["dati"];
    }else{
      $dati="";
    }
    ?>
    //codice ripetuto per ogni immagine cambiando solo il valore imgX
    <?
    if(stristr('img1', $dati){
      $img="ciao.gif";
      echo "<img src=\"$img\" border=\"0\" onClick=\"$dati.='img1|'\">";
    }else{
      $img="bye.gif";
      echo "<img src=\"$img\" border=\"0\" onClick=\"$dati=str_replace('img1|', '', $dati)\">";
    }
    ?>

    un codice così, tutto in php , funzionerebbe anche, solo che visto nella pagina avrò un centinaio di immagini, anche se di piccole dimensioni (12x13), devo fare il tutto senza il refresh, quindi mi serve in java.
    help please!!
    nella mia ignoranza ho provato una cosa del tipo:

    codice:
    onClick="
    if( maybe == 0 ){
     var nome = 'dati';
     document.cookie= nome + '=img1|';
     var maybe = 1;
    }else{
     var nome = 'dati';
     document.cookie= document.cookie.nome - 'img1';
     var maybe = 0;
    }"

    ma naturalmente non funzica (non sbellicatevi troppo dalle risate se ho fatto qualche minchiata, non conosco il js )...

    www.inter-rail.it
    travellers, not tourist
    Is cuma cá mhinice a théann tú ar strae; is é is tábhachtaí gurb áil leat do bhealach a aimsiú arís.

  8. #8
    Utente di HTML.it L'avatar di thitan
    Registrato dal
    Feb 2001
    Messaggi
    716

    www.inter-rail.it
    travellers, not tourist
    Is cuma cá mhinice a théann tú ar strae; is é is tábhachtaí gurb áil leat do bhealach a aimsiú arís.

  9. #9
    Utente di HTML.it L'avatar di thitan
    Registrato dal
    Feb 2001
    Messaggi
    716
    plz...stò messo così

    www.inter-rail.it
    travellers, not tourist
    Is cuma cá mhinice a théann tú ar strae; is é is tábhachtaí gurb áil leat do bhealach a aimsiú arís.

  10. #10
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Cerca di fare attenzione che ti puoi fare male
    Pietro

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.