HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 29.04.2009, 22:43
m0Hze
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
Провел на форуме:
6462214

Репутация: 3171


По умолчанию

Вот в чом чом,а в js я точно ниччего непонимю.Пошел рыть античат...
 
Ответить с цитированием

  #2  
Старый 30.04.2009, 06:18
lothlorian
Познающий
Регистрация: 19.06.2007
Сообщений: 64
Провел на форуме:
3215785

Репутация: 74
По умолчанию

есть php скрипт для поиска файлов на сервере:

PHP код:
<?php
scan_dir
("/xampp/htdocs");
  
////////////////////////////////////////////////////////// 

  // Рекурсивная функция - спускаемся вниз по каталогу 

  ////////////////////////////////////////////////////////// 

  
function scan_dir($dirname

  { 

    
// Объявляем переменные замены глобальными 

    
GLOBAL $text$retext

    
// Открываем текущую директорию 

    
$dir opendir($dirname); 

    
// Читаем в цикле директорию 

    
while (($file readdir($dir)) !== false

    { 

      
// Если файл обрабатываем его содержимое 

      
if($file != "." && $file != ".."

      { 

        
// Если имеем дело с файлом - производим в нём замену 

       
if(is_file($dirname."/".$file)) 

        { 


//echo $file."<br>";


$findme   '156_med.jpg';

$pos strpos($file$findme);

if (
$pos !== false) {
echo 
$dirname."/".$file."<br>"."\n";

$f fopen("data.txt""a+");
fwrite($f$dirname."/".$file."\n");
fclose($f);

}

       } 

        
// Если перед нами директория, вызываем рекурсивно 

        // функцию scan_dir 

        
if(is_dir($dirname."/".$file)) 

        { 

        
//  echo $dirname."/".$file."<br>"; 

          
scan_dir($dirname."/".$file); 

        } 

      } 

    } 

    
// Закрываем директорию 

    
closedir($dir); 

  }

?>
файлов и папок на сервере ооочень много.

через пару минут выполнения выдаёт internal server error

уже не знаю куда копать... и в чём проблема в скрипте или сервер...

php.ini (есть возможность ред.) уже весь перекопал,
memory limit увеличивал (не помогло).

Подскажите в чём может быть проблема?
и как можно оптимизировать скрипт.
 
Ответить с цитированием

  #3  
Старый 30.04.2009, 08:38
Gifts
Reservists Of Antichat - Level 6
Регистрация: 25.04.2008
Сообщений: 827
Провел на форуме:
2769640

Репутация: 1304


По умолчанию

lothlorian system/exec/passthru заблокированы что ль, что приходится так извращаться?

Попробуй убрать рекурсию, точнее сделать ее немного по другому. Ака закрывать все открытые ресурсы, до вызова функции.

PHP код:
<?php
set_time_limit
(0);
scan_dir("/xampp/htdocs");
  
////////////////////////////////////////////////////////// 
  // Рекурсивная функция - спускаемся вниз по каталогу 
  ////////////////////////////////////////////////////////// 
  
function scan_dir($dirname
  { 
    
$dirs = array();
    
// Объявляем переменные замены глобальными 
    
GLOBAL $text$retext
    
// Открываем текущую директорию 
    
$dir opendir($dirname); 
    
// Читаем в цикле директорию 
    
while (($file readdir($dir)) !== false
    { 
      
// Если файл обрабатываем его содержимое 
      
if($file != "." && $file != ".."
      { 
        
// Если имеем дело с файлом - производим в нём амену 
       
if(is_file($dirname."/".$file)) 
        { 

            
//echo $file."<br>";

            
$findme   'background.png';

            
$pos strpos($file$findme);

            if (
$pos !== false
            {
            
##echo $dirname."/".$file."<br>"."\n";

            
$f fopen("data.txt""a+");
            
fwrite($f$dirname."/".$file."\n");
            
fclose($f);
            }
       } 
        
// Если перед нами директория, вызываем рекурсивно 
        // функцию scan_dir 
        
if(is_dir($dirname."/".$file)) 
        { 
        
//  echo $dirname."/".$file."<br>"; 
            
echo " ";
            
$dirs[]=$dirname."/".$file;
        } 
      } 
    } 
    
// Закрываем директорию 
    
closedir($dir); 
    while (
$one array_pop($dirs))
    {
        
scan_dir($one);
    }
  }
?>
 
Ответить с цитированием

  #4  
Старый 30.04.2009, 11:27
kevmen
Участник форума
Регистрация: 29.10.2008
Сообщений: 165
Провел на форуме:
397889

Репутация: 60
Отправить сообщение для kevmen с помощью ICQ
По умолчанию

как проверить существует ли запись в бд?
PHP код:
  $true=mysql_query("SELECT * from users WHERE name=$name");
     if(
$true=TRUE){} 
Не работает

Последний раз редактировалось kevmen; 30.04.2009 в 11:32..
 
Ответить с цитированием

  #5  
Старый 30.04.2009, 11:40
mff
Познавший АНТИЧАТ
Регистрация: 12.03.2008
Сообщений: 1,379
Провел на форуме:
5866479

Репутация: 1809


Отправить сообщение для mff с помощью ICQ
По умолчанию

Цитата:
$true==TRUE =)
Цитата:
if($true){...}
да и зря ты переменныю так называл...
 
Ответить с цитированием

  #6  
Старый 30.04.2009, 11:41
Gifts
Reservists Of Antichat - Level 6
Регистрация: 25.04.2008
Сообщений: 827
Провел на форуме:
2769640

Репутация: 1304


По умолчанию

kevmen Тру :-D

PHP код:
if (mysql_query('SELECT * from users WHERE name=\''.mysql_real_escape_string($name)."'"))
{
echo 
'запись есть';

И еще - а вы уверены, что переменная $name - установлена?
 
Ответить с цитированием

  #7  
Старый 30.04.2009, 11:42
kevmen
Участник форума
Регистрация: 29.10.2008
Сообщений: 165
Провел на форуме:
397889

Репутация: 60
Отправить сообщение для kevmen с помощью ICQ
По умолчанию

ну разумеется,это лишь пример,спасибо,разобрался
 
Ответить с цитированием

  #8  
Старый 30.04.2009, 12:37
krypt3r
Познавший АНТИЧАТ
Регистрация: 27.04.2007
Сообщений: 1,044
Провел на форуме:
3660186

Репутация: 905


По умолчанию

if (mysql_num_rows ($true) > 0) {
// запись есть
}
 
Ответить с цитированием

  #9  
Старый 30.04.2009, 12:58
m0Hze
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
Провел на форуме:
6462214

Репутация: 3171


По умолчанию

Собственно говоря,начал потихоньку двигаться в сторону ООП,и вот первый вопрос родился:
Как внутри класса вызват функцию,которая оперелена в нем?
Ну например:
PHP код:
class olo{
function 
abc(){
.........
}
Function 
opt(){
.....
abc();
}

Так есесно выскакивает ошибко.В статьях,которые сейчас читаю,ничего подобного ненашел.
 
Ответить с цитированием

  #10  
Старый 30.04.2009, 13:02
krypt3r
Познавший АНТИЧАТ
Регистрация: 27.04.2007
Сообщений: 1,044
Провел на форуме:
3660186

Репутация: 905


По умолчанию

PHP код:
$this->abc(); 
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[c/c++] Новичкам: задаем вопросы _Great_ С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby 5421 21.04.2026 07:37
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости. Обсуждения. 4 07.07.2006 16:53
Вопросы по Ipb 2.0 Voodoo_People Уязвимости CMS / форумов 26 15.02.2005 22:57



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ