memorizzazione degli elementi

zighy

Utente Attivo
20 Gen 2012
96
0
0
Con IE sta maledetta astronave torna sempre in mezzo...cmq sto lavorando a un altra cosetta,sicuramente sempre inerente alla memorizzazione ci sarnno problemi quindi poi posto
 

zighy

Utente Attivo
20 Gen 2012
96
0
0
ok raga ma considerato che cmq il mio problema rimane irrisolta a questo punto posterei su ajax per vedere se qualcuno riesce a darmi almeno qualche spunto..
Cmq in parallelo sto provando scriptaculous..non è una parolaccia..funziona e memorizza anche nei cookie la posizione degli elementi ma per quello che mi serve a me modificarlo diventa forse piu complicato che cercare uno script in ajax..ma per la vostra gioia di smanettoni lo posto..chissa':

pagina ''home.php''

PHP:
<? 
session_start(); 
//array elementi -> possono anche essere presi da database 
$elemento[1]['titolo']="TITOLO 1"; 
$elemento[1]['contenuto']="Contenuto 1."; 
$elemento[2]['titolo']="TITOLO 2"; 
$elemento[2]['contenuto']="Contenuto 2."; 
$elemento[3]['titolo']="TITOLO 3"; 
$elemento[3]['contenuto']="Contenuto 3."; 

$elemento[4]['titolo']="TITOLO 4"; 
$elemento[4]['contenuto']="Contenuto 4."; 
$elemento[5]['titolo']="TITOLO 5"; 
$elemento[5]['contenuto']="Contenuto 5."; 
$elemento[6]['titolo']="TITOLO 6"; 
$elemento[6]['contenuto']="Contenuto 6."; 

$elemento[7]['titolo']="TITOLO 7"; 
$elemento[7]['contenuto']="Contenuto 7."; 
$elemento[8]['titolo']="TITOLO 8"; 
$elemento[8]['contenuto']="Contenuto 8."; 
$elemento[9]['titolo']="TITOLO 9"; 
$elemento[9]['contenuto']="Contenuto 9."; 

//controllo cookie 

if(!isset($_COOKIE['cookie_colonna1']) && !isset($_COOKIE['cookie_colonna2']) && !isset($_COOKIE['cookie_colonna3'])){
     setcookie ( "cookie_colonna1","1,2,3",time()+2592000); 
    setcookie ( "cookie_colonna2","4,5,6",time()+2592000); 
    setcookie ( "cookie_colonna3","7,8,9",time()+2592000); 
    $array_colonna1=array(1,2,3); 
    $array_colonna2=array(4,5,6); 
    $array_colonna3=array(7,8,9); 
}else{ 
    if(isset($_COOKIE['cookie_colonna1'])){ 
        $array_colonna1=explode(",",$_COOKIE['cookie_colonna1']); 
    }else{ 
        $array_colonna1=Array(); 
    } 
    if(isset($_COOKIE['cookie_colonna2'])){ 
        $array_colonna2=explode(",",$_COOKIE['cookie_colonna2']); 
    }else{ 
        $array_colonna2=Array(); 
    } 
    if(isset($_COOKIE['cookie_colonna3'])){ 
        $array_colonna3=explode(",",$_COOKIE['cookie_colonna3']); 
    }else{ 
        $array_colonna3=Array(); 
    } 
} 


?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
<head> 
  <title>Script ajax: Drag and drop con scriptaculous e salvataggio posizione</title>
   <meta http-equiv="content-type" content="text/html; charset=utf-8" /> 
  <script src="ajax/prototype.js" type="text/javascript"></script> 
  <script src="ajax/scriptaculous.js" type="text/javascript"></script> 
  <script src="ajax/unittest.js" type="text/javascript"></script> 
  <link rel="stylesheet" type="text/css" href="style.css" /> 
   
<script> 
var arraytitoli = new Array(); 
var arraycontent = new Array(); 
<?for($el=1;$el<=count($elemento);$el++){?> 
    arraytitoli.push('<?=$elemento[$el]['titolo']?>'); 
    arraycontent.push('<?=$elemento[$el]['contenuto']?>'); 
<?}?> 
function crea(elemento){ 
    if(!$('firstlist_key'+elemento) && !$('secondlist_key'+elemento) && !$('thirdlist_key'+elemento)){
         newitem=Builder.node( 'li', {className:'item',id:'firstlist_key'+elemento});
         newtitle=Builder.node( 'div', {className:'handle'},arraytitoli[elemento-1]);
         newchiudi=Builder.node( 'div', {className:'chiudi'}); 
        newlink=Builder.node( 'a', {href:'java-script:rimuovi('+elemento+')', className:'chiudilink'},'x');
          
        newitem.appendChild(newtitle); 
        newitem.appendChild(newchiudi); 
        newchiudi.appendChild(newlink); 
        $('firstlist').appendChild(newitem); 
                 
        $('firstlist_key'+elemento).innerHTML=$('firstlist_key'+elemento).innerHTML+arraycontent[elemento-1];
          
        var myAjax = new Ajax.Request("save.php", {method:'get',parameters:Sortable.serialize('firstlist')+"&"+Sortable.serialize('secondlist')+"&"+Sortable.serialize('thirdlist')});
         rendisortable(); 
    } 
} 

function rimuovi(elemento){ 
    if($('firstlist_key'+elemento)){$('firstlist_key'+elemento).parentNode.removeChild($('firstlist_key'+elemento));}
     if($('secondlist_key'+elemento)){$('secondlist_key'+elemento).parentNode.removeChild($('secondlist_key'+elemento));}
     if($('thirdlist_key'+elemento)){$('thirdlist_key'+elemento).parentNode.removeChild($('thirdlist_key'+elemento));}
      
    var myAjax = new Ajax.Request("save.php", {method:'get',parameters:Sortable.serialize('firstlist')+"&"+Sortable.serialize('secondlist')+"&"+Sortable.serialize('thirdlist')});
     rendisortable(); 
} 

function rendisortable(){ 
 // <![CDATA[ 
   Sortable.create("firstlist", 
     {dropOnEmpty:true,handle:'handle',containment:["firstlist","secondlist","thirdlist"],constraint:false,
       onUpdate:function(){var myAjax = new Ajax.Request("save.php", {method:'get',parameters:Sortable.serialize('firstlist')+"&"+Sortable.serialize('secondlist')+"&"+Sortable.serialize('thirdlist')}) }});
    Sortable.create("secondlist", 
     {dropOnEmpty:true,handle:'handle',containment:["firstlist","secondlist","thirdlist"],constraint:false,
      onUpdate:function(){var myAjax = new Ajax.Request("save.php", {method:'get',parameters:Sortable.serialize('firstlist')+"&"+Sortable.serialize('secondlist')+"&"+Sortable.serialize('thirdlist')}) }});
    Sortable.create("thirdlist", 
     {dropOnEmpty:true,handle:'handle',containment:["firstlist","secondlist","thirdlist"],constraint:false,
      onUpdate:function(){var myAjax = new Ajax.Request("save.php", {method:'get',parameters:Sortable.serialize('firstlist')+"&"+Sortable.serialize('secondlist')+"&"+Sortable.serialize('thirdlist')}); }});
  // ]]> 
} 
</script> 
</head> 
<body onload="rendisortable()"> 
<?for($el=1;$el<=count($elemento);$el++){?> 
<a href="java-script:crea('<?=$el?>')"><?=$elemento[$el]['titolo']?></a> &nbsp;&nbsp;
 <?}?> 

<div class="container"> 
    <div class="colonna"> 
        <ul class="sortabledemo" id="firstlist"> 
            <? 
            for($elementi=0;$elementi<count($array_colonna1);$elementi++){ 
            ?> 
            <li class="item" id="firstlist_key<?=$array_colonna1[$elementi]?>"> 
                <div class="handle"><?=$elemento[$array_colonna1[$elementi]]['titolo']?></div>
                 <div class="chiudi"><a href="java-script:rimuovi(<?=$array_colonna1[$elementi]?>)" class="chiudilink">x</a></div>
                 <?=$elemento[$array_colonna1[$elementi]]['contenuto']?> 
            </li> 
            <? 
            } 
            ?> 
        </ul> 
    </div> 
    <div class="colonna"> 
        <ul class="sortabledemo" id="secondlist"> 
            <? 
            for($elementi=0;$elementi<count($array_colonna2);$elementi++){ 
            ?> 
            <li class="item" id="secondlist_key<?=$array_colonna2[$elementi]?>">
                 <div class="handle"><?=$elemento[$array_colonna2[$elementi]]['titolo']?></div>
                 <div class="chiudi"><a href="java-script:rimuovi(<?=$array_colonna2[$elementi]?>)" class="chiudilink">x</a></div>
                 <?=$elemento[$array_colonna2[$elementi]]['contenuto']?> 
            </li> 
            <? 
            } 
            ?> 
        </ul> 
    </div> 
    <div class="colonna"> 
        <ul class="sortabledemo" id="thirdlist"> 
            <? 
            for($elementi=0;$elementi<count($array_colonna3);$elementi++){ 
            ?> 
            <li class="item" id="thirdlist_key<?=$array_colonna3[$elementi]?>"> 
                <div class="handle"><?=$elemento[$array_colonna3[$elementi]]['titolo']?></div>
                 <div class="chiudi"><a href="java-script:rimuovi(<?=$array_colonna3[$elementi]?>)" class="chiudilink">x</a></div>
                 <?=$elemento[$array_colonna3[$elementi]]['contenuto']?> 
            </li> 
            <? 
            } 
            ?> 
        </ul> 
    </div> 
</div> 
 </body> 
 </html>

pagine "save.php"

PHP:
<? 
session_start(); 
if(isset($_GET['firstlist'])){$firstlist=$_GET['firstlist'];}else{$firstlist=Array();}
 if(isset($_GET['secondlist'])){$secondlist=$_GET['secondlist'];}else{$secondlist=Array();}
 if(isset($_GET['thirdlist'])){$thirdlist=$_GET['thirdlist'];}else{$thirdlist=Array();}
 
$colonna1=str_replace("key","",implode(",",$firstlist)); 
$colonna2=str_replace("key","",implode(",",$secondlist)); 
$colonna3=str_replace("key","",implode(",",$thirdlist)); 

setcookie ( "cookie_colonna1",$colonna1,time()+2592000); 
setcookie ( "cookie_colonna2",$colonna2,time()+2592000); 
setcookie ( "cookie_colonna3",$colonna3,time()+2592000); 

?>

style.css

HTML:
body{
	font: 10px verdana;
	}

div.container{
	width:800px;
	margin: 0px auto 0px;
	overflow: hidden;
}
div.colonna{
	float:left;
	width:240px;
	padding:10px;
}
ul.sortabledemo {
	min-height:150px;
	width:200px;
}
li.item {
	height:50px;
	border:1px solid #5788AF;
	background-color: #A7C6DF;
	list-style-type: none;
	margin-left:-40px;
	margin-bottom:15px;
}
div.handle {
	width: 100%;
	background-color: #00ff00;
	color:white;
	cursor: move;
}

I javascript sono scaricabili qui: (io li ho messi in una cartella nominata ajax)

http://script.aculo.us/

Domanda...
il metodo di salvataggio della posizione degli elemnti con i cookie che è in questa pagina..puo'essere adattato per la mia?
 
Ultima modifica:
Discussioni simili
Autore Titolo Forum Risposte Data
F Memorizzazione degli Acquisti fatti sul SitoWeb da parte di diversi utenti Database 1
M Memorizzazione temi per le diverse pagine del sito Javascript 1
P [PHP] checkbox e sua memorizzazione nel db PHP 31
P doppio problema nella memorizzazione dati PHP 11
P problema memorizzazione dati o immagine PHP 18
P leggere dvd e memorizzazione dei dati letti PHP 1
K consiglio su supporto di memorizzazione MySQL 6
A problema estrazione singolo valore e memorizzazione in variabile PHP 1
A Facebook login - memorizzazione su mysql Sviluppo app per Android 1
Alessandro Le Mura [risolto] PHP problema memorizzazione array PHP 4
R ordinamento immagini con drag and drop e memorizzazione db PHP 1
R checkbox e memorizzazione dati PHP 1
W Memorizzazione post utenti in database PHP 6
A [PHP] Creare memorizzazione indirizzi ip PHP 2
M Array. Stampa e memorizzazione in database PHP 2
M form per login con memorizzazione id utente da database PHP 5
S Procedura memorizzazione Javascript 0
G Perché il mio sito su Google news fa vedere le immagini degli articoli la mia foto profilo? WordPress 1
A media degli elementi estratti da una query MySQL 0
P Errore nell'indirizzo degli elementi HTML e CSS 2
Shyson Mettere categorie nelle anteprime degli articoli PHP 1
MarcoGrazia foreign key cancellazione degli alberi figli di un nodo mancante MySQL 0
Max 1 Importante Sostieni Fondazione Banca degli Occhi, dona il tuo 5x1000 Altri Annunci 2
G Fare uno sfondo con il prato e degli alberi Photoshop 0
V [CSS] Uso degli id HTML e CSS 2
Max 1 Grave episodio alla Fondazione Banca degli Occhi di Mestre Discussioni Varie 7
filograndipad2 Da dove arrivano i parametri degli event handler? Sviluppo app per Android 1
filograndipad2 Esempi chiari e completi sul funzionamento degli eventi in Java Java 1
felino [WordPress] File di log degli errori WordPress 6
S [Javascript] [HTML] problema nella stampa degli elementi della pagina Javascript 3
N Affidabilità degli e-commerce Leggi, Normative e Fisco 0
S Codice degli Headings SEO e Posizionamento 5
M Dimensioni diverse degli input text tra Firefox per Linux e Windows HTML e CSS 3
L Il titolo degli articoli e tag è diverso da quello impostato da me WordPress 6
A Spostare Degli Oggetti in Più PictureBox in VB 6 Presentati al Forum 0
Marco_88 Verificare la selezione degli elementi dom jQuery 2
A come eliminare i suggerimenti della barra degli indirizzi su google chrome? Windows e Software 3
felino [Virtuemart 1.1.9] Gestione ordini: export ordini attuali e reset degli stessi Joomla 0
felino Visualizzare degli input dinamicamente dentro un div jQuery 1
filippino Rating stato d'animo degli utenti a fine post WordPress 1
braccobaldo Cooperativa degli sviluppatori Leggi, Normative e Fisco 0
andry79fi PLUGIN (o script) per Pagina Facebook con INTERVENTI degli utenti WordPress 0
felino [JS] Passare un array ed effettuare la somma degli elementi Javascript 2
felino Ordinamento dinamico degli elementi visualizzati PHP 6
L elenco anagrafe degli utenti PHP 5
Z Cambiare colore alla finestra degli avvisi CMS (Content Management System) 1
M Cambiare le impostazioni di visualizzazione degli strumenti cs 4 Photoshop 1
S Nascondere nome pagina web dalla barra degli indirizzi HTML e CSS 2
borgo italia priorità degli operatori Discussioni Varie 8
V Invio E-Mail con la notifica degli ordini effettuati PHP 2

Discussioni simili