Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

14.06.2009, 19:26
|
|
Познающий
Регистрация: 16.03.2009
Сообщений: 82
Провел на форуме: 148667
Репутация:
23
|
|
привет всем! У меня небольшая проблемка. Написал я простую гостевую книгу на php.
Все у меня работает сообщения выводяться в нужном порядке.
Только не могу дописать в код навигацыю по гостевой книге, може поможете. Я имею ввиду дописать Ссилки типа "Предидущие" "Следущие".
сообщения храняться в файлах в папке "mes" файлы в масиве $me[]; и виводяться таким кодом:
$size = sizeof($me);
if ($size != 0)
{
asort($me);
for($i=$start; $i<$count; $i++)
{
include ("$dirname/$me[$i]");
echo'<br><hr>';
}
}
В конце надо сделать так чтобы на странице было не больше 10 сообщений и стрелки навигацыи.
Последний раз редактировалось Patronik; 14.06.2009 в 19:30..
|
|
|

14.06.2009, 19:57
|
|
Members of Antichat - Level 5
Регистрация: 15.06.2008
Сообщений: 941
Провел на форуме: 5111568
Репутация:
2399
|
|
PHP код:
$size = sizeof($me);
if ($size != 0) {
asort($me);
if (isset($_GET['next'])) $start += 10;
if (isset($_GET['prev'])) $start -= 10;
for($i=$start; $i<10; $i++) {
include ("$dirname/$me[$i]");
echo'<br><hr>';
}
echo '<a href="?next">next</a>';
echo '<a href="?prev"> prev </a>';
}
|
|
|

14.06.2009, 20:00
|
|
Постоянный
Регистрация: 05.07.2008
Сообщений: 555
Провел на форуме: 3134311
Репутация:
1467
|
|
Сообщение от Chrek625
я прошу хотябы подсказать какую функцию использовать для поиска в файле.
Нихрена не понял... можно поподробнее и, желательно, с примерами?
|
|
|

14.06.2009, 21:01
|
|
Участник форума
Регистрация: 06.06.2006
Сообщений: 163
Провел на форуме: 1025198
Репутация:
11
|
|
Вот пример:
https://blablablabla.com
LOGONPAGE=LOGONPAGE
screenRes=1024x768
timezone=GMT 0000
Java=On
UserId1=1234214
Password=qwerty
QQpass=qwerty
нечто подобное к примеру находиться в файлах. меня интересует с помощью какой функции можно найти строчку с адресом и считать её и несколько строк следующих за ней.
|
|
|

14.06.2009, 21:15
|
|
Постоянный
Регистрация: 29.05.2007
Сообщений: 852
Провел на форуме: 4832771
Репутация:
1916
|
|
Ну регулярками, или file() и поиск по массиву. А следующие строчки $file[$key + 1], $file[$key + 2]
|
|
|

14.06.2009, 21:40
|
|
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме: 9220514
Репутация:
3338
|
|
PHP код:
<pre>
<?php
@set_time_limit(0);
@ini_set("display_errors","1");
$b = 8; //Кол-во строчек с нужной нам инфо, следующее за названием сайта (включая пустые строки, до следующего названия сайта)
$z = fopen('tema2.txt', 'a'); // Файл-результат по запросу
$submit = $_POST['submit'];
if(isset($submit))
{
$site = trim($_POST['site']);//Сайт, данные по которому нам нужны
$a = fopen('tema1.txt','r'); //Файл с данными
while(!feof($a)) {
$buffer = trim(fgets($a));
if (preg_match('|' . $site . '|',$buffer)) {
for ($i=1; $i<=$b; $i++) {
echo "$buffer\n";
fwrite ($z,"$buffer\r\n");
$buffer = trim(fgets($a));
}
}
}
fwrite ($z,"=====================\r\n");
fclose ($a);
}
?>
</pre>
<html>
<head>
<meta http-equiv="Content-Type" content="text; charset=windows-1251">
<title>FTP2FTP</title>
</head>
<bоdу>
<div align="center">
<form method="post">
<table>
<tr><td><span>Input site name:</span></td><td><input type="text" name="site" /></td></tr>
</table>
<input type="submit" name="submit" value="Find" />
</form>
</div>
</bоdу>
</html>
причем можно воодить без "http" или просто часть названия сайта
|
|
|

14.06.2009, 23:33
|
|
Постоянный
Регистрация: 05.07.2008
Сообщений: 555
Провел на форуме: 3134311
Репутация:
1467
|
|
Сообщение от Chrek625
Вот пример:
https://blablablabla.com
LOGONPAGE=LOGONPAGE
screenRes=1024x768
timezone=GMT 0000
Java=On
UserId1=1234214
Password=qwerty
QQpass=qwerty
нечто подобное к примеру находиться в файлах. меня интересует с помощью какой функции можно найти строчку с адресом и считать её и несколько строк следующих за ней.
$data = file ( $filename );
Теперь в $data будет массив строк:
$data[0] == 'https://blablablabla.com';
$data[1] == 'LOGONPAGE=LOGONPAGE';
$data[2] == 'screenRes=1024x768';
etc...
P.S. Данные типа Java и ScreenRes для передачи на вход ресивера в системе супербана? =)
|
|
|

15.06.2009, 17:04
|
|
Познающий
Регистрация: 16.03.2009
Сообщений: 82
Провел на форуме: 148667
Репутация:
23
|
|
как записать три строки в файл? Например первая $name втроая $email треяя $message.
Чтобы потом масив $data[0] содержал $name $data[1] содержал $email $data[2] содержал $message.
У меня получаеться так но если я в $message записиваю несколько строк с пробелами и с "ентер" например "авбгд
авбвгд
абвгд"
То потом у меня $data[2] содержыт только "авбгд" а мне нужно чтобы вивести потом все ссобщение а не только первую строку.
|
|
|

15.06.2009, 17:47
|
|
Новичок
Регистрация: 06.05.2009
Сообщений: 7
Провел на форуме: 60371
Репутация:
1
|
|
как записать три строки в файл?
при записи заменять символы переноса каретки на <br>
|
|
|

15.06.2009, 17:55
|
|
Познающий
Регистрация: 16.03.2009
Сообщений: 82
Провел на форуме: 148667
Репутация:
23
|
|
Можно поконкретней, я записиваю так:
fputs($file,$name."\n");
fputs($file,$email."\n");
fputs($file,$message."\n");
Считиваю так
for($i2 = $start; $i2<$count; $i2++)
{
$entry = $me[$i2];
$data = file("mes/$me[$i2]");
$name = trim($data[0]);
$email = trim($data[1]);
$message = trim($data[2]);
}
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|