Risultati da 1 a 9 di 9

Discussione: Posizionare un div da coordinate database

  1. #1
    L'avatar di zighy
    zighy è offline Utente del Forum
    Data Registrazione
    Jan 2012
    Messaggi
    43

    Posizionare un div da coordinate database

    Da database ricavo id,x,y che equivalgono al nome del div,e la distanza da top e left.Vorrei che i div nel body prendessero le posizione che gli passo.
    Ho provato cosi ma non funziona...help

    Codice HTML:
    <html>
    <head>
    <title>test</title>
    
    <script type="text/javascript">
    
    var id = <?php echo $id ;?>;
    var x = <?php echo $x1 ;?>;
    var y = <?php echo $y1 ;?>;
    
    function set(id,x,y){
     document.getElementByID('id')style.margin-top= x + 'px';
     document.getElementByID('id')style.margin-left= y + 'px';
     }
    </script>
    	</head>
    
    	<body onLoad="set()">
    
    <div drag1></div>
    Ultima modifica di alessandro1997; 03-02-2012 alle 09:35

  2. #2
    L'avatar di borgo italia
    borgo italia è offline Moderatore
    Data Registrazione
    Feb 2008
    Località
    PR
    Messaggi
    7,253
    ciao
    due cose:
    una può essere che non hai scritto tutto il codice, ma non vedo da dove ricavi le coordinate dal db
    la seconda, per vedere se php funzia , ho aggiunto un po di php al tuo
    Codice PHP:
    <?php
    $id 
    333;
    $x1 222;
    $y1 =111;
    ?>
    <html>
    <head>
    <title>test</title>
    <script type="text/javascript">
    var id = <?php echo $id ;?>;
    var x = <?php echo $x1 ;?>;
    var y = <?php echo $y1 ;?>;
    function set(id,x,y){
    document.getElementByID('id')style.margin-top= x + 'px';
    document.getElementByID('id')style.margin-left= y + 'px';
    }
    </script>
    </head>

    <body onLoad="set()">

    <div drag1></div>
    se chiami il file e guardi con visualizza origine vedrai
    Codice:
    //....
    var id = 333;
    var x = 222;
    var y = 111;
    //......
    è il js che non funzia, posta nella sua sezione

  3. #3
    L'avatar di zighy
    zighy è offline Utente del Forum
    Data Registrazione
    Jan 2012
    Messaggi
    43
    Le coordinate le ricavo da

    Codice PHP:
    <?php
     $username
    ="nomeuser";
     
    $password="*****";
     
    $database="my_db";
       
    mysql_connect(localhost,$username,$password);
        @
    mysql_select_db($database) or die("Impossibile selezionare il database.");
         
    $query="SELECT * FROM coordinate";
          
    $risultati=mysql_query($query);
            
    $num=mysql_numrows($risultati);
              
    mysql_close();
                  
    $i=0;
                   while (
    $i $num) {
                        
    $id=mysql_result($risultati,$i,"id");
                             
    $x1=mysql_result($risultati,$i,"x1");
                                  
    $y1=mysql_result($risultati,$i,"y1");
                                              
    $i++; }
    ?>
    e va bene perchè se faccio un echo mi da tutto alla perfezione quindi credo sia il js che non fa il suo dovere per qualche motivo

  4. #4
    L'avatar di max_400
    max_400 è offline Moderatore
    Data Registrazione
    Jan 2009
    Località
    caltanissetta
    Messaggi
    638

    Non si possono ricevere variabili php dentro lo script js

    Codice:
    <script type="text/javascript">
    var id = <?php echo $id ;?>;
    var x = <?php echo $x1 ;?>;
    var y = <?php echo $y1 ;?>;
    function set(id,x,y){
    document.getElementByID('id')style.margin-top= x + 'px';
    document.getElementByID('id')style.margin-left= y + 'px';
    }
    </script>

    (Se non mi ricordo male)
    ma puoi prenderle esternamente...


    pagina-che-invia.php
    Codice:
    <?php
    $var1=100; //valore x da database
    $var2=200; //valore y da database
    
    header('location: pagina-che-riceve2.html?var1='.$var1.'&var2='.$var2);
    ?>
    pagina-che-riceve.html
    Codice:
    <script>
    function leggi(){
    ggg=this.location.search;
    alert(ggg);
    }
    </script>
    <body onload="leggi()">
    </body>
    esempio
    http://max400scuola.altervista.org/a...-che-invia.php
    da questa pagina passi le variabili a quest'altra trascinandole tramite l'url.....

    http://max400scuola.altervista.org/a...1=100&var2=200
    ....e alla fine estrai le variabili dall'url e ci fai quello che vuoi
    messenger/e-mail: max_400@tiscali.it
    forum di max: http://max400.forumfree.it/
    il mio sito Presentazione; http://riccardo007.altervista.org/presentazione.htm
    il mio NUOVO sito di Presentazione; http://max400scuola.altervista.org/index.html

  5. #5
    L'avatar di borgo italia
    borgo italia è offline Moderatore
    Data Registrazione
    Feb 2008
    Località
    PR
    Messaggi
    7,253
    ciao @max
    no max quello che ha fatto è giusto
    var id = <?php echo $id ;?>;
    è da js a php che non si possono tramettere variabili
    volendo anche tutto il js potrebbe essere scritto con un echo php

    p.s.
    sempre @max
    se guardi un tuo script da me modificato creo con php anche i nomi delle function
    Ultima modifica di borgo italia; 02-02-2012 alle 17:11

  6. #6
    L'avatar di zighy
    zighy è offline Utente del Forum
    Data Registrazione
    Jan 2012
    Messaggi
    43

    Angry

    Ma se quello che ho fatto è giusto avete idea di come mai non funziona?
    In alternativa sto provando a dare uno stile al div da una pagina.php esterna che assume le variabile passate da database come margin-top e margin-left ma fino ad ora senza risultati....

  7. #7
    L'avatar di max_400
    max_400 è offline Moderatore
    Data Registrazione
    Jan 2009
    Località
    caltanissetta
    Messaggi
    638

    eh si... effettivamente...funziona!

    il gattaccio ha ragione mi legge le variabili dentro i tag -script- e -/script-
    stasera doppia scatoletta per te!...ih ih ih

    è da js a php che non si possono tramettere variabili
    Per quanto riguarda il contrario da js a php l'unico modo è tramite stringa come ho fatto nell'esempio precedente e intercettarle con $_GET

    Adesso provo lo script di zighy...intanto modificherei il margin-left in marginLeft=100; //senza 'px'
    e poi nel body aggiungerei i 3 parametri...

    comunque a dopo...
    messenger/e-mail: max_400@tiscali.it
    forum di max: http://max400.forumfree.it/
    il mio sito Presentazione; http://riccardo007.altervista.org/presentazione.htm
    il mio NUOVO sito di Presentazione; http://max400scuola.altervista.org/index.html

  8. #8
    L'avatar di max_400
    max_400 è offline Moderatore
    Data Registrazione
    Jan 2009
    Località
    caltanissetta
    Messaggi
    638

    ecco qua....

    http://max400scuola.altervista.org/aaa/a-php/zighy.php


    il codice
    Codice PHP:
    <?php
    $id
    =333;
    $x1=222;
    $y1=111;
    ?>

    <html>
    <head>
    <title>test</title>

    <script type="text/javascript">
    function carica_dati(){
    var idn = <?php echo $id?>;
    var x=<?php echo $x1?>;
    var y=<?php echo $y1?>;
    alert(idn);
    alert(x);
    alert(y);
    xx=eval(x);
    yy=eval(y);
    sett();
    }
    function sett(){
    document.getElementById('idn').style.marginTop=xx;
    document.getElementById('idn').style.marginLeft=yy;
    }
    </script>
    </head>

    <body onload="carica_dati()">

    <div id="idn">pppp</div>

    </body>
    ho messo una serie di alert per leggere i valori alla fine il div si sposta in base a quei valori


    dimenticavo c'erano un bel po di errori nel tuo script zighy
    Codice:
    document.getElementByID('id')style.margin-top= x + 'px';
    in
    Codice:
    document.getElementById('id').style.marginTop=x;
    ovviamente bisogna by-passare la variabile x con eval e diventa
    ...marginTop=xx; //valore by-passato xx=eval(x);
    Ultima modifica di max_400; 02-02-2012 alle 18:49 Motivo: dimenticavo mancava un pezzo di codice da sopra
    messenger/e-mail: max_400@tiscali.it
    forum di max: http://max400.forumfree.it/
    il mio sito Presentazione; http://riccardo007.altervista.org/presentazione.htm
    il mio NUOVO sito di Presentazione; http://max400scuola.altervista.org/index.html

  9. #9
    L'avatar di zighy
    zighy è offline Utente del Forum
    Data Registrazione
    Jan 2012
    Messaggi
    43
    Potrebbe funzionare.L'unica cosa è che il database prende le coordinate con offset.top e offset.left che a quando pare non sono la stessa cosa di marginTop quindi il div non va dove dovrebbe.Che ne pensi?

    NO FERMI TUTTI

    colpa mia!Seguiranno nuove cominicazione
    Ultima modifica di zighy; 02-02-2012 alle 19:32 Motivo: ops

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •