Вы не зашли.
#11.
Nbbt
Off
(3)
Участник
2009.04.26 13:01
В $mess? Почему?
выполни скрипт и посмотри
#13.
Nbbt
Off
(3)
Участник
2009.04.26 13:01
Уже разобрался, спасибо огромное)))
#14.
Nbbt
Off
(3)
Участник
2009.04.26 14:02
Но теперь возникла проблемка: при добавлении сообщения, если messages.dat пустой появляются ошибки... Они конечно не мешают, но смотрится это не прилично
Отредактировано Nbbt (2009.04.26 14:02)
#15.
JInn
Off
(2)
Участник
2009.04.26 16:04
Можно проще. Проверяешь субмит, если есть записываешь, если нет то нет. Как записал - субмит убил и все.
Извиняюсь, это не прокатит ) Вот как можно: после того как сообщение записал, в суперглобальную переменную (я в сессию) заносишь сообщение, а перед записью сверяешь с тем, что по посту пришло, если одинаковое, то не записываем. Это точно работает. Я думаю так быстрее будет, чем доставать из базы или файла. Выглядеть это будет так
Код:
if (isset($_SESSION['старое сообщение']) && $_SESSION['старое сообщение'] != $_POST['новое сообщение']) |
{тут пошла запись в базу или файл} а после записи $_SESSION['старое сообщение'] = $_POST['новое сообщение']; |
Если есть тема сообщения то можно тему кидать в сессию, оно меньше по размеру
Отредактировано JInn (2009.04.27 01:01)
Как все таки сложно быть ботом...
#16.
Nbbt
Off
(3)
Участник
2009.04.27 14:02
Пока тот вариан меня устраивает, но всё равно спасибо.
Появился новый вопрос. У меня сообщения при таком цикле
Код:
$file = file('messages.dat'); |
$count = count($file); |
for ($i = 0; $i < $count; $i++) { |
$text = explode("|",$file[$i]); |
Выводятся с первого по последний, а как сделать чтоб с последнего по первый?
#17.
Nbbt
Off
(3)
Участник
2009.04.27 19:07
ПыХаПэ сЪеЛЪ мОй мОзгГ *CRAZY*
Ждал, ждал, пока кто ответит... Перелапатил несколько скриптов, обсосал все ф-ции на php.su... Ниче не нашел... И Вот оно -- нечайно увыдел спасительное
array_reverseРадости небыло предела)))
Вобсщем всё оказалось просто, правда мозг сгорел

Итог:
Код:
$file = file('messages.dat'); |
$file = array_reverse($file); |
$count = count($file); |
for ($i = 0; $i < $count; $i++) { |
$text = explode("|",$file[$i]); |
Теперь всё вроде норм пока выводится
Гемор, похвалишь?)))
Добавлено спустя 1 минуту 59 секунд: Блин, столько долгов в универе, а этот несчасный мой первый кривой скрипт не дает покоя, блин

))
ну можно было сделать и без array_reverse

Код:
for ($i = $count; $i >= 0; $i--) { |
#19.
Nbbt
Off
(3)
Участник
2009.04.28 09:09
Помогите с регуляркой...
Что не правильно? Почему не работает?
preg_match("/^[-a-zA-Z0-9_]+[\@][-a-zA-Z0-9_\.]+$/"
собаку слешировать и в скобки брать не надо.
preg_match('/^[a-z][a-z0-9_\.\-]{1,23}@([a-z][a-z0-9\-]{1,24}\.){1,3}[a-z]{2,6}$/i', $email)
пользуйся такой)