Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di mt19
    Registrato dal
    Jul 2011
    Messaggi
    180

    Prendere dati cpu, diskspace, ram e banda & autoupdate codice php

    Salve a tutti, sono qua con una domanda piuttosto consistente in quanto non conosco assolutamente javascript ma devo usarlo
    Vi spiego i miei problemi:
    ho una pagina come questa:

    http://i.imgur.com/Hsi7A6M.png

    Questi grafici ovviamente non funzionano con i corretti dati.
    Il grafico è fatto con questo html:

    codice:
    <ul class="gaugeContainers tabContent">
     <li id="g1">
     <li id="g2">
     <li id="g3">
     <li id="g4">
     <li id="g5"> [/list]
    Il tutto gestito da javascript:

    codice:
    <script>function c(){var m,l,k,o,n;var m=new JustGage({id:"g1",value:<?php echo $allinfo['Players'];?>,min:0,max:30,title:"User",label:"di",levelColorsGradient:false});var l=new JustGage({id:"g2",value:10,min:0,max:100,title:"Memory",label:"%",levelColorsGradient:false});var k=new JustGage({id:"g3",value:getRandomInt(40,70),min:0,max:100,title:"Network",label:"%",levelColorsGradient:false});var o=new JustGage({id:"g4",value:getRandomInt(38,38),min:0,max:100,title:"Disk space",label:"%",levelColorsGradient:false});var n=new JustGage({id:"g5",value:getRandomInt(38,42),min:20,max:110,title:"Temperature",label:"°C",levelColorsGradient:false});setInterval(function(){k.refresh(getRandomInt(40,70));n.refresh(getRandomInt(38,42))},1000);</script>
    c'è ancora un sacco di roba ma la dovrei aver eliminata tutta tenendo quello che interessa a me
    Praticamente con questo script vengono dette le percentuali del grafico. Ci sono anche dei randomizzatori per far vedere come si muovono i grafici (il tema è prefatto) che andranno tolti, ma per quello non è un problema.

    Veniamo a noi:
    prima di tutto mi servirebbe un modo con il quale aggiorno questa stringa: <?php echo $allinfo['Players'];?> che arriva da questa pagina:
    codice:
    require __DIR__ . '/MinecraftQuery.class.php';
    ogni secondo quando la pagina è aperta da un browser ma senza ricaricare tutta la pagina (so che va fatto da javascript ma non riesco a implementarlo nel codice)
    (questo lo dovrò fare per tutte le g che ci sono (5))

    secondo quesito, un po' più consistente probabilmente:
    come faccio a ricevere tramite php e javascript la quantità di ram, cpu e spazio usato? so che devo usare /proc/stat con php e javascript, ho trovato qualche ma non riesco a implementarlo (https://code.google.com/p/php-cpu-monitor/) quindi sarebbe fantastico se mi deste una mano ad implementarlo nel mio sito (se fosse possibile aggiungendo anche il disco usato e sarebbe fantastico se fosse visualizzata anche la velocità della banda passante. Il tutto andrebbe ovviamente in una delle g (ovviamente anche questo andrebbe aggiornato ogni secondo)

    Grazie a tutti e come al solito grazie allo staff di html.it

  2. #2
    Utente di HTML.it L'avatar di IAL32
    Registrato dal
    Aug 2011
    Messaggi
    88
    Per la prima domanda: è sufficente che tu usi la funzione $.get o $.ajax di jQuery:
    jQuery.get()
    jQuery.ajax()
    Ed invece di chiedere alla pagina corrente il valore di $allinfo['Players'];, lo chiedi ad una pagina, o crei una funzione $_GET/$_POST a parte, che ti restituisce il valore.
    Per evitare che si riaggiorni tutta la pagina, basta inserire quel $.get/$.ajax in un setInterval()

    Per la seconda domanda: il codice che hai trovato è molto semplice sia da usare che da implementare, ma mi pare che tu non abbia molta esperienza al riguardo.
    In pratica fa la stessa cosa che ti ho appena descritto, richiama la pagina cpu.php con il valore $_GET['cpu'], e ne ottiene il risultato senza caricare la pagina, applicandone il risultato ai controlli nella pagina.

    Se hai ancora dei dubbi, chiedi pure

  3. #3
    Utente di HTML.it L'avatar di mt19
    Registrato dal
    Jul 2011
    Messaggi
    180
    il problema è che non so proprio una mazza (scusami la parola ma è quella che rende meglio l'idea) di js, quindi mi viene difficile farmi il codice, anche perchè se inserisco il $_GET['cpu'] mi da un errore in javascript... (non mi si carica il resto del codice) eppure sono sicuro di averlo inserito giusto.
    Non è che potresti gentilmente farmi qualche esempio con qualche codice pratico, al meno capisco meglio come impostare il tutto...

    Grazie mille per la risposta

  4. #4
    Utente di HTML.it L'avatar di IAL32
    Registrato dal
    Aug 2011
    Messaggi
    88
    Allora, prova a vedere nella cartella js il file js/cpufunctions.js.
    Nota la riga 42, da dove inizia $(function replay(){
    Più avanti, lui richiama la funzione $("#cpu").load(function(){...})
    (.load() jQuery)
    In pratica richiama il contenuto della pagina in questione, e ne restituisce il valore nel tag di ID cpu.
    $_GET['cpu'] è una variabile dell'array $_GET[], che indica i parametri dell'url(guarda anche solo l'url di questa pagina, in quella in cui sto scrivendo io ci sono i seguenti parametri $_GET: s=&action=newreply&threadid=1549210)
    Allora, il file js richiede il valore della pagina cpu.php mediante il suo parametro cpu dell'array $_GET[]
    ($_GET)

    Nel file cpu.php inoltre, vedi come "outputta" un solo valore mediante la funzione echo().
    E' questo il valore che tu stai cercando di ottenere.

    Comunque le pagine che ti ho linkato sia qui, sia nell'altra risposta, riportano esempi molto validi

  5. #5
    Utente di HTML.it L'avatar di mt19
    Registrato dal
    Jul 2011
    Messaggi
    180
    Lo so che mi avevi dato dei validi esempi, il mio problema è che di javascript veramente non ne so assolutamente nulla quindi per me anche sono dichiarare una variabile è difficile per questo ti chiedevo un esempio più completo. È per la mia completa ignoranza in js che non riesco a capire a pieno quello che mi stai dicendo
    In ogni caso ti ringrazio tantissimo della risposta

  6. #6
    Utente di HTML.it L'avatar di IAL32
    Registrato dal
    Aug 2011
    Messaggi
    88
    Beh, se per esempio più completo intendi che il codice lo faccia io, mi dispiace, ma secondo il regolamente non è ammesso dare "pappa pronta"(e anche secondo la mia etica morale).
    Se proprio non sai NIENTE, c'è una guida introduttiva al JS proprio su html.it:
    http://www.html.it/guide/guida-javascript-di-base/
    Guida al jQuery
    Guida AJAX(che è quello che praticamente serve a te per questo particolare caso)

    Ti consiglio di andare per gradi, quando si capisce almeno come costruirsi i mattoncini più piccoli, si riesce più o meno a mettere insieme qualcosa che abbia un senso

  7. #7
    Utente di HTML.it L'avatar di mt19
    Registrato dal
    Jul 2011
    Messaggi
    180
    ok grazie mille sai stato gentilissimo e no, non volevo la pappa pronta Grazie mille di tutto ora mi andrò a studiare un po' quelle guide e sistemo tutto Gentilissimo!

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 © 2024 vBulletin Solutions, Inc. All rights reserved.