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

Форум PHP

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

 

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

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

тема: администрирование в php
 
 автор: Polina   (09.06.2009 в 09:07)   письмо автору
 
 

Есть код для вывода содержимого такойто дирректории

<?php

class calc_dir
{

var $a_fname=array();
var $a_fsize=array();
var $a_fdir =array();
var $cofiles;

function init()
{
$this->cofiles=0;
}

function calc_files($in_dir)
{
#Так можно отсечь нежелательные имена файлов
#if (preg_match("/_vti[.]*/i",$in_dir)){return;}

if ($dir_handle = @opendir($in_dir))
{
while($file = readdir($dir_handle))
{
//Рекурсивный проход по директориям
if ($file!=".." && $file!="." && is_dir($file))
{
$this->calc_files($in_dir."/".$file);
}

//Проход по файлам
if (is_file($in_dir."/".$file) && $file!=".." && $file!=".")
{
$this->a_fname[$this->cofiles]=$file;
$this->a_fsize[$this->cofiles]=filesize ($in_dir."/".$file);
$this->a_fdir [$this->cofiles]=$in_dir;
$this->cofiles++;

}
}
}
}

function sort ()
{
array_multisort (
$this->a_fname,
$this->a_fsize,
$this->a_fdir );
}


function show()
{
echo "<center><table border=\"1\"><tr align=\"center\"> <td>i</td><td>name</td><td>size</td><td>dir</td></tr>";
$a_size=0;
for ($i=0;$i<count($this->a_fname);$i++)
{
echo "<tr align=\"center\"><td>".($i+1)."</td><td>".$this-> a_fname[$i]."</td><td>".$this->a_fsize[$i]."</td><td> ".$this->a_fdir[$i]."</td></tr>";
$a_size+=$this->a_fsize[$i];
}
echo "<tr><td colspan=\"2\">Total:</td><td colspan=\"2\">$a_size</td></tr>";
echo "</table></center>";
}

}//end class

$d=new calc_dir;
$d->init();
$d->calc_files($_POST['url']);
$d->sort();
$d->show();

?>



необходимо чтоб адрес вводился с формы и количество фаилов и их общий вес заносился в базу

  Ответить  
 
 автор: mihdan   (09.06.2009 в 09:23)   письмо автору
 
   для: Polina   (09.06.2009 в 09:07)
 

И в чем, собственно, проблема?
Ставьте форму. Проверяйте нажатость кнопки. Заносите данные в базу

init - переименуйте в calc_dir для РНР4, в _construct - для РНР5, уберите $d->init();
И вообще зачем вам класс?

  Ответить  
 
 автор: Polina   (09.06.2009 в 09:26)   письмо автору
 
   для: mihdan   (09.06.2009 в 09:23)
 

Касяк весь в том что не видет введенного адреса

  Ответить  
 
 автор: mihdan   (09.06.2009 в 09:27)   письмо автору
 
   для: Polina   (09.06.2009 в 09:26)
 

Пример? И уберите вы собаки в коде - станет яснее, где ошибка

  Ответить  
 
 автор: Polina   (09.06.2009 в 10:01)   письмо автору
 
   для: mihdan   (09.06.2009 в 09:27)
 

вот код формы

<html>
<head>
<title>Учебник</title>

</head>
<body>

<form method="POST" action="Count.php">
Адрес: <input name="url" type="text" value=""><BR>
<input type="submit" value="Проверить дерикторию">
</form>

</body>
</html>


непередает она адрес и все

  Ответить  
 
 автор: *m*   (09.06.2009 в 11:51)   письмо автору
 
   для: Polina   (09.06.2009 в 10:01)
 

в обработчик впишите:


<?
if(isset($_POST['url'])) {$url = ($_POST['url']);}
?>

  Ответить  
 
 автор: Trianon   (09.06.2009 в 11:54)   письмо автору
 
   для: *m*   (09.06.2009 в 11:51)
 

зачем?
Волшебная фраза?

  Ответить  
 
 автор: *m*   (09.06.2009 в 11:58)   письмо автору
 
   для: Trianon   (09.06.2009 в 11:54)
 

так скорей всего нет этой проверки.

  Ответить  
 
 автор: Trianon   (09.06.2009 в 12:08)   письмо автору
 
   для: *m*   (09.06.2009 в 11:58)
 

и не должна быть.

  Ответить  
 
 автор: sim5   (09.06.2009 в 12:43)   письмо автору
 
   для: Polina   (09.06.2009 в 10:01)
 

Учтите, что для Unix системы, файлы сount.php и Count.php разные! Это надо помнить всегда, что бы не получать проблем из-за таких мелочей. Если нет большой необходимости, то приучите себя именовать все в нижнем регистре, меньше путаницы будет. Адрес форма то передаст в любом случае, конечно если поле формы будет заполнено, а вот кому, это вопрос.
Оформляя свой вопрос, используйте теги [сode][/сode], обрамляя ими свой код - он будут с подсветкой, так его удобнее читать.

  Ответить  
 
 автор: Polina   (09.06.2009 в 15:16)   письмо автору
 
   для: sim5   (09.06.2009 в 12:43)
 

Всем большое спасибо,тока скажите пожулуйста как мне общее количество фаилов и их общий объем передать в таблицу БД

  Ответить  
 
 автор: sim5   (09.06.2009 в 15:34)   письмо автору
 
   для: Polina   (09.06.2009 в 15:16)
 

Ну как следует из вашего кода - в функции show() вы получаете необходимое, значит в ней и нужно добавить запрос INSERT к соответствующей таблице.

  Ответить  
 
 автор: Polina   (10.06.2009 в 13:02)   письмо автору
 
   для: sim5   (09.06.2009 в 15:34)
 

спасибо

  Ответить  
Rambler's Top100
вверх

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