Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Перевод байтов в мегабайты
 
 автор: Shadow69   (06.02.2007 в 15:10)   письмо автору
 
 

Здравствуйте!

Интересует следующий вопрос.

Есть таблица sql:

CREATE TABLE `music` (
`id_music` int(11) NOT NULL auto_increment,
`name` text NOT NULL,
`size` tinytext NOT NULL,
`url` tinytext NOT NULL,
PRIMARY KEY (`id_music`)
) TYPE=MyISAM ;

Поле size - размер mp-3 файла в байтах.

Выводим информацию из базы данных music:


  $query = "SELECT * FROM music";
  $msc = mysql_query($query);
   if (!$msc) puterror("Ошибка при обращении к разделу");
   if(mysql_num_rows($msc) > 0)
     {
        while($music = mysql_fetch_array($msc))
       {
         echo "".$music['name'].", ".$music['size'].", ".$music['url']."";
       }
      }


Естественно размер файла выводится в байтах (т.к. как он базе данных такой). А как сделать чтобы выводил в мегабайтах? Никак сообразить не могу. Заранее спасибо за помощь.

   
 
 автор: retsoul   (06.02.2007 в 15:12)   письмо автору
 
   для: Shadow69   (06.02.2007 в 15:10)
 

общее количество байт делить на количество байт в одном мегабайте

   
 
 автор: coloboc66   (06.02.2007 в 15:20)   письмо автору
 
   для: retsoul   (06.02.2007 в 15:12)
 

$music['size']/1000000

[поправлено модератором]

   
 
 автор: Саня   (06.02.2007 в 15:22)   письмо автору
 
   для: coloboc66   (06.02.2007 в 15:20)
 

$music['size'] / 1048576;

   
 
 автор: Sergey89   (06.02.2007 в 15:23)   письмо автору
 
   для: coloboc66   (06.02.2007 в 15:20)
 

1024*1024

   
 
 автор: Shadow69   (06.02.2007 в 15:31)   письмо автору
 
   для: coloboc66   (06.02.2007 в 15:20)
 

coloboc66, да причём здесь класс-то? Меня интересует как всё это реализовать.

coloboc66, Саня думаете вот так будет работать?


,,,
   if(mysql_num_rows($msc) > 0) 
     { 
        while($music = mysql_fetch_array($msc)) 
       { 
         echo "".$music['name'].", ".$music['size']."/1048576, ".$music['url'].""; 
       } 
    }

   
 
 автор: retsoul   (06.02.2007 в 15:35)   письмо автору
 
   для: Shadow69   (06.02.2007 в 15:31)
 

делением)))

вот так:
<?
echo "".$music['name'].", ".($music['size']/1048576).".$music['url']."";
?>

   
 
 автор: Shadow69   (06.02.2007 в 15:38)   письмо автору
 
   для: retsoul   (06.02.2007 в 15:35)
 

retsoul, спасибо! Тема закрыта. Туплю! :-)))

   
 
 автор: Саня   (06.02.2007 в 15:41)   письмо автору
 
   для: Shadow69   (06.02.2007 в 15:38)
 

Если получится неудобочитаемая дробь, например 132.534883, можно поступить следующим образом:
<?php
echo $music['name'].", ".sprintf("%.2f"$music['size'] / 1048576).
     
", ".$music['url'];
Выйдет 132.53

   
 
 автор: Shadow69   (06.02.2007 в 15:42)   письмо автору
 
   для: Саня   (06.02.2007 в 15:41)
 

Саня, спасибо.

   
 
 автор: ZuArt   (06.02.2007 в 15:43)   письмо автору
 
   для: Shadow69   (06.02.2007 в 15:31)
 

вот так будет:

echo $music['name'].', '.round($music['size']/1048576, 2).' Mb, '. $music['url'];


round нужен просто для округления с заданной точностью - тут 2 знака

   
 
 автор: retsoul   (06.02.2007 в 15:33)   письмо автору
 
   для: coloboc66   (06.02.2007 в 15:20)
 

>Вы в каком классе учитесь?!
видимо это не мне :]

для тех, кто не знает, что такое байт:
http://ru.wikipedia.org/wiki/%D0%91%D0%B0%D0%B9%D1%82

   
 
 автор: mihdan   (06.02.2007 в 15:43)   письмо автору
 
   для: retsoul   (06.02.2007 в 15:33)
 


<php
if(mysql_num_rows($msc) > 0) 
     { 
        while($music = mysql_fetch_array($msc)) 
       { 
         echo $music['name'].", ".($music['size']/1048576).", ".$music['url'].""; 
       } 
    } 
?>

   
 
 автор: Shadow69   (06.02.2007 в 15:47)   письмо автору
 
   для: mihdan   (06.02.2007 в 15:43)
 

Отзывчивый форум. ZuArt, mihdan, спасибо! Всем спасибо.

   
 
 автор: mihdan   (06.02.2007 в 15:49)   письмо автору
 
   для: Shadow69   (06.02.2007 в 15:47)
 

Не за что заходите.... пишите...помогайте другим...

   
 
 автор: ZuArt   (06.02.2007 в 17:50)   письмо автору
 
   для: Shadow69   (06.02.2007 в 15:47)
 

;) нзчт

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования