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

    Query MySql con PHP e Javascript

    Ciao a tutti,
    utilizzo questo codice per eseguire una query UPDATE sul mio db.

    Codice PHP:
    <?php
    function RefreshTime($id){
    $servername "***";
    $username "***";
    $password "***";
    $dbname "***";
    $conn = new mysqli($servername$username$password$dbname);
    // Check connection
    if ($conn->connect_error){
        die(
    "Connection failed: " $conn->connect_error);
    } else {echo 
    "conn.ok";}
    $time "";
    ?>
    <script type="text/javascript">
    var now = new Date();
    var yy = now.getUTCFullYear().toString();
    var mm = now.getUTCMonth().toString();
    var dd = now.getUTCDate().toString();
    var hh = now.getUTCHours().toString();
    var min = now.getUTCMinutes().toString();
    var sec = now.getUTCSeconds().toString();
    var mil = now.getUTCMilliseconds().toString();
    if (mm.length.toString()==1){mm="0"+mm;}
    if (dd.length.toString()==1){dd="0"+dd;}
    if (hh.length.toString()==1){hh="0"+hh;}
    if (min.length.toString()==1){min="0"+min;}
    if (sec.length.toString()==1){sec="0"+sec;}
    if (mil.length.toString()==1){mil="00"+mil;}
    if (mil.length.toString()==2){mil="0"+mil;}
    var t = yy+mm+dd+hh+min+sec+mil;
    <?php $time=t?></script>
    <?php
    $time
    ="<script>document.write(t);</script>";
    $query "UPDATE `devices` SET `currentTime`='" $time "' WHERE `_id` ='" $id "'";$result $conn->query($query);
    if (
    $conn->query($query) === TRUE) {
    return 
    1;
    } else {
     return 
    0;}
    $conn->close();
    }
    Questa funzione viene eseguita ogni secondo, lo script del tempo restituisce l'orario preciso ai millisecondi, poichè un software su Windows deve poi leggere l'orario dal database in tempo reale per sapere 'l'ultimo accesso'. Il vero problema sta nel fatto che -giustamente- nel database non viene scritto il valore di $time, impostato dallo script, ma semplicemente la stringa "<script>document.write(t);</script>" infatti per quanto io sappia il JS viene eseguito solamente dopo il PHP.
    Come fare?? Grazie mille!
    Ultima modifica di RichiFra03; 13-03-2016 a 22:39
    RichiFra03

  2. #2
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    php non legge js.
    inoltre puoi prendere il tempo corrente direttamente in php
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  3. #3
    Ok, intanto grazie. Quindi devo riscrivere la funzione del tempo in PHP? Grazie ancora.
    RichiFra03

  4. #4
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    Quote Originariamente inviata da RichiFra03 Visualizza il messaggio
    Ok, intanto grazie. Quindi devo riscrivere la funzione del tempo in PHP? Grazie ancora.
    penso convenga
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  5. #5
    ok, grazie. Provo e ti faccio sapere se ci sono problemi.
    RichiFra03

  6. #6
    PERFETTO!!
    Utilizzando questo codice:
    Codice PHP:
    $now = new \DateTime'now',  new \DateTimeZone'UTC' ) );
    $now->setTimezone( new \DateTimeZone'Europe/Rome' ) );
    $time $now->format('YmdHis') . "000"
    sono riuscito ad ottenere tutto ciò che cercavo compreso il formato dell'orario e il meridiano di riferimento. Grazie tante davvero!
    RichiFra03

  7. #7
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


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.