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 :

Enlever ou imposer les www de l'URL de mon site avec un fichier .htaccess
Bug quand répertoire .android est dans un sous répertoire avec caractère accentué
Connaitre la configuration Python sur son hébergement 1&1
Tutoriel pour afficher et localiser une adresse sur Google Map
Rediriger un nom de domaine Gandi vers un hébergement 1&1
Rediriger index.php à la racine du site avec le fichier .htaccess
Configurer l'encodage UTF-8 d'une base de données et des fichiers d'un site Internet
Récupérer dans un tableau, les page d'un site indexées par Google
Disfonctionnement de WAMP à l'ouverture d'une page php
Uncaught TypeError: Cannot read property 'msie' of undefined
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