le MEMO du WEB développeur
••• Divers •••  Liste des Mémos, astuces et bonnes pratiques

Script pour jongler avec les octets - Convertir octet / ko / Mo / Go

Calculer

Code pour jonglet entre les octets (Bytes en anglais), Ko (kilos-octet), Mo (Méga-octet), Go (Giga-octet) en utilisant le binôme Javascript Ajax.

Grossières estimations : 

  • Une image pèse entre quelques ko et quelques Mo.
  • Un film pèse entre plusieurs centaines de Mo et quelques Go

Formulaire de conversion d'octets

A noter que j'ai utilisé le plugin JQuery joliSelect pour styliser l'élément HTML Select.

Fichier form-octet.html :

Conversion d'octets : 
<form method="POST" action="">
  <input id="valeur_octet" type="text"/>
  <select id="unite_octet">
     <option value="1" >o</option>
     <option value="2" selected="selected">Ko</option>
     <option value="3">Mo</option>
     <option value="4">Go</option>    
  </select>
  <div id="calcul_octet">Calculer</div>
  <div id="resultat"></div>
</form>

Code Javascript :

<script type="text/javascript">
$(document).ready( function () {
$("#calcul_octet").click(function() {
   $.ajax({
      url      : "octet.php",    
      data     : {valeur_octet : $("#valeur_octet").val(), unite_octet : $("#unite_octet").val()},
      cache    : false,
      dataType : "json",
    error : function(request, error) { // Info Debuggage si erreur        
   alert("Erreur : responseText: "+request.responseText);
      },
      success: function(data) {  
           if (data.valeur_o > 0)     
             $("#resultat").html(data.valeur_o + ' octet(s) <br/> '+
                                           data.valeur_ko + ' ko <br/> '+
                                           data.valeur_Mo + ' Mo <br/> '+
data.valeur_Go + ' Go <br/> ' );
          
        }
     });
  });
  });
</script>

Code PHP (octet.php) :

  if (isset($_REQUEST['valeur_octet'])){
    $valeur=$_REQUEST['valeur_octet'];
  }else $valeur=0;
  $unite= $_REQUEST['unite_octet'];
   $result_o  ='';
   $result_Ko ='';
   $result_Mo =''; 
   $result_Go ='';
  switch ($unite)
{
    case 1:
   $result_o   = $valeur;  
      $result_Ko = 1/bcpow(2, 10)  * $valeur;
   $result_Mo = 1/bcpow(2, 20) * $valeur;
      $result_Go = 1/bcpow(2, 30) * $valeur;
   break;
    case 2:
      $result_o   = bcpow(2, 10) * $valeur;
      $result_Ko = $valeur;
   $result_Mo = 1/bcpow(2, 10) * $valeur;
      $result_Go = 1/bcpow(2, 20) * $valeur;
      break;
    case 3:
      $result_o   = bcpow(2, 20) * $valeur;
      $result_Ko = bcpow(2, 10) * $valeur;
   $result_Mo = $valeur;
      $result_Go = 1/bcpow(2, 10) * $valeur;
      break;
case 4:
      $result_o   = bcpow(2, 30) * $valeur;
      $result_Ko =  bcpow(2, 20) * $valeur;
   $result_Mo =  bcpow(2, 10) * $valeur;
      $result_Go = $valeur;
      break;
       default: ;
        break;
}

  header('Content-type: application/json');
  ?>
  {
      "valeur_o": "<?php echo $result_o;?>",
      "valeur_ko": "<?php echo $result_Ko;?>",
   "valeur_Mo": "<?php echo $result_Mo;?>",
   "valeur_Go": "<?php echo $result_Go;?>"
  }
  <?php
exit(0);

 

publié le 17/09/2013 par Memo Web
Commentaire :
Marche pas ton truc :(
par inconnu, le 06/11/2013
Commenter le Mémo :

Retrouver les coordonnées latitude longitude d'un endroit avec Google Map
Sécuriser l'accès à un répertoire avec un fichier .htpasswd
Personnaliser la page d'erreur 404
Enlever ou imposer les www de l'URL de mon site avec un fichier .htaccess
Les erreurs du .htaccess
Rediriger un nom de domaine Gandi vers un hébergement 1&1
Uncaught TypeError: Cannot read property 'msie' of undefined
Familles de polices avec un largeur de lettres fixe
Configurer l'encodage UTF-8 d'une base de données et des fichiers d'un site Internet
Afficher une carte Google Map sur son site Internet avec PHP / Javascript
Ajoutez vos propres Mémos sur MEMO-WEB

Il suffit de vous créer un compte sur le site

Vous pourrez choisir un thème parmis l'une des catégories proposées par MEMO-WEB.

Rédigez votre Mémo.
Après validation par MEMO-WEB, il sera mis en ligne.
Ajouter vos Mémos