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

    Salvare sati nel database ma come?

    Salve io ho 2 pagina in php e javascript in questa pagina ci sono delle tabelle drag e drop come posso salvare le modifiche degli utenti nel database in quanto al montento uso cookie ecco gli script

    home.php

    Codice 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="js/blocchi/prototype.js" type="text/javascript"></script>
      <script src="js/blocchi/scriptaculous.js" type="text/javascript"></script>
      <script src="js/blocchi/unittest.js" type="text/javascript"></script>
      <link rel="stylesheet" type="text/css" href="css/blocchi/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:'javascript: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++){?>
    [url="javascript:crea('<?=$el?>')"]<?=$elemento[$el]['titolo']?>[/url] 
    <?}?>

    <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">[url="javascript:rimuovi(<?=$array_colonna1[$elementi]?>)"]x[/url]</div>
                    <?=$elemento[$array_colonna1[$elementi]]['contenuto']?>
                
                <?
                
    }
                
    ?>
            [/list]
        </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">[url="javascript:rimuovi(<?=$array_colonna2[$elementi]?>)"]x[/url]</div>
                    <?=$elemento[$array_colonna2[$elementi]]['contenuto']?>
                
                <?
                
    }
                
    ?>
            [/list]
        </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">[url="javascript:rimuovi(<?=$array_colonna3[$elementi]?>)"]x[/url]</div>
                    <?=$elemento[$array_colonna3[$elementi]]['contenuto']?>
                
                <?
                
    }
                
    ?>
            [/list]
        </div>
    </div>
     </body>
     </html>

    e questa è la pagina save.php

    Codice 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);

    ?>

    mi date qualche consiglio???

  2. #2
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,655
    Ciao, in due righe scrivere il codice e' un po complicato ma comunque per uno strumento di amministrazione che ho fatto, puoi salvare via ajax/php i vari dati a db. Ad ogni modifica calcoli con javascript le varie posizioni(vedi tu su cosa basarti) e poi li salvi a db oridinando ad esempio colonne, righe, tabelle (nel mio caso anche contenuti). Cosi' facendo al ricaricamento della pagina anche senza cookie i dati li prendi inizialmente da db e il tutto torna come l'ultima modifica.

  3. #3
    allora, nella pagina save.php devi "catturare" tutte le variabili che passi tramite form (get o post)
    per esempio:
    codice:
    $variabile =$POST['variabile'];
    Poi devi connetterti al db
    codice:
    	@mysql_connect("ip", "user", "password") or die("non riesco a connettermi al database");
    	@mysql_select_db("tabella") or die("non trovo nessuna tabella");
    e poi devi fare la sql e la close

    codice:
    	$sql = "INSERT INTO galleria (path,sezione, categoria) VALUES ('img\/galleria\/$nome','$sezione', '$categoria')";
    	$risultato = @mysql_query($sql) or die("non riesco ad inserire i dati, molto probabilmente $path0 esiste gia nel database");
    	}
    
    	mysql_close();
    ciao ciao
    Quanti programmatori sono necessari per cambiare una lampadina?
    Nessuno, e' un problema hardware.

  4. #4
    mmm...sto lavorando a qualcosa, ma, qualcuno potrebbe darmi una tabella mysql che vada bene nel mio caso? perchè non ho propio idea...qualcosa del genere???

    CREATE TABLE `blocchi` (
    `id_utente` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
    `colonna_1` TEXT NOT NULL ,
    `colonna_2` TEXT NOT NULL ,
    `colonna_3` TEXT NOT NULL
    ) ENGINE = MYISAM ;
    che ne dite va bene?

  5. #5
    una volta salvati i dati come li prelevo dal database? ecco cosa sono riuscito a fare:

    save.php
    Codice 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));

      
    //conessione al database
      
    require('config.ini.php');
      
     
    $query="INSERT INTO tab (colonna1,colonna2,colonna3) VALUES ('$colonna1','$colonna2', '$colonna3')";
     if(!
    mysql_query($testo,$db_nome)) /*eseguo la query e controllo se va a buon fine ^^*/
         
    die("<h1>".mysql_error()."</h1>");
         
    mysql_close($db_nome);
    ?>
    index.php
    Codice 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
    $query mysql_query("SELECT * FROM tab");
    if(!
    $query){ /*eseguo la query e controllo se va a buon fine ^^*/ die('Errore: non riesco a eseguire la query'); }
    /*************

    COME FACCIO A RICHIAMARE LA POSIZIONE???

    *************/



    ?>
    <!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>Drag and drop salvataggio posizione</title>
      <meta http-equiv="content-type" content="text/html; charset=utf-8" />
      <script src="js/blocchi/prototype.js" type="text/javascript"></script>
      <script src="js/blocchi/scriptaculous.js" type="text/javascript"></script>
      <script src="js/blocchi/unittest.js" type="text/javascript"></script>
      <link rel="stylesheet" type="text/css" href="css/blocchi/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:'javascript: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++){?>
    [url="javascript:crea('<?=$el?>')"]<?=$elemento[$el]['titolo']?>[/url] 
    <?}?>

    <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">[url="javascript:rimuovi(<?=$array_colonna1[$elementi]?>)"]x[/url]</div>
                    <?=$elemento[$array_colonna1[$elementi]]['contenuto']?>
                
                <?
                
    }
                
    ?>
            [/list]
        </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">[url="javascript:rimuovi(<?=$array_colonna2[$elementi]?>)"]x[/url]</div>
                    <?=$elemento[$array_colonna2[$elementi]]['contenuto']?>
                
                <?
                
    }
                
    ?>
            [/list]
        </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">[url="javascript:rimuovi(<?=$array_colonna3[$elementi]?>)"]x[/url]</div>
                    <?=$elemento[$array_colonna3[$elementi]]['contenuto']?>
                
                <?
                
    }
                
    ?>
            [/list]
        </div>
    </div>
     </body>
     </html>

  6. #6
    errore... cancellate pure questo post
    <ALCIO />
    Per cortesia: no PVT Tecnici
    ******* LINKS *******
    SRL
    MetalWave

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.