Показать сообщение отдельно

  #2  
Старый 01.11.2007, 09:27
.::Gh0st::.
Гарант Форума
Регистрация: 22.01.2005
Сообщений: 267
Провел на форуме:
1982081

Репутация: 1067
Отправить сообщение для .::Gh0st::. с помощью ICQ
Post

для начала создаем файл script.php, над которым будут проводиться операции
PHP код:
<?
eval("\$str = \"$str\";");
?>
затем код оперирущего скрипта
PHP код:
<?
$filename 
"script.php";

$rh fopen($filename"r");
    
$filedata fread($rhfilesize($filename));
    if (
preg_match("/eval\(.*\);/i"$filedata))
    {
        
$backup preg_split("/eval\(.*\);/i"$filedata);
        
$params preg_split("/eval\(|\);/i"$filedata);
        
$data $backup[0]."echo ".$params[1].";".$backup[1];        
        
$wh fopen($filename"w");
        
fwrite($wh$data);
        
fclose($wh);        
    }
    
fclose($rh);

// execution
$fullpath realpath("./");
passthru("php $fullpath/script.php");
?>
пока что не реализовано (потому как не понял, что ты имел ввиду)
Цитата:
и если в результате находил в коде eval(gzinflate(base64_decode())), то повторял процедуру.
запускается скрипт, ищет eval() - пока что при условии что он один (если предполагается что их несколько - скажи - переделаю). далее бэкапится все до eval() и после. внутри eval() выдирается все, что было между скобок. затем открываем файл заного, вставляем все, что было до eval(), вставляем echo и все что было между скобок в eval() и все что после eval. работоспособность проверил, но только при учете что eval() в скрипте один, если несколько, надо сделать построчное чтение из файла и немного изменить обработку. затем скрипт запускается из командной строки командой
Цитата:
php full/path/to/file/script.php

Последний раз редактировалось .::Gh0st::.; 01.11.2007 в 09:30..