|
Бесплатные PHP скрипты - форум техподдержки |
Форум техподдержки WR-Скриптов на php. Обсуждаем: основы программирования на PHP 5 - 7 версий, различные подходы к написанию скриптов на php 7 без MySQL. А также WR-скрипты: бесплатные доски объявлений, скрипты форумов, Гостевые книги, Каталог ссылок, Галерея, Фотоальбом, Счётчики, Рассылки, Анекдот и другие. Принимаются пожелания для новых версий. Сообщите какой скрипт нужен для Вашего сайта, постараемся найти или реализовать. Скачать скрипты можно бесплатно. Вместе мы сделаем бесплатные php скрипты лучше и доступнее!
|
| Сегодня: 22.11.2024 - 00:34:45 Мини-чат в форумеОбъявление - WR-Scriptы в UTF-8 кодировке |
---|
Активно обновляю скрипты и перевожу их в UTF-8 кодировку. Список перекодированных php скриптов доступен на главной странице сайта. Скачивайте скрипты и устанавливайте на свой сайт! В ближайшее время обновлю каталог знакомств, форум Про, фотоальбом, доски объявлений лайт и ЛЮКС.
На форуме, пожалуйста, пишите что модернизировать в скриптах в первую очередь. Постараюсь исправить большую часть пожеланий! Планирую продолжить работы весь 2023 год.
|
Автор | Сообщение |
---|
LOSKAND •
L Участник форума
|
AlexandЗr, Говоря про золотую середину я имелл виду дать возможность пользователю самому выбирать время обновления а также выбор включения и отключения автоматического обновления. например так Код: if($wrfname){ if($dt[18]==true){ print"<script language=javascript>function reload(){setTimeout('Refr();',$rtime);};function Refr(){document.location='chat.php'};function stopError(){return true;};</script>"; } } | где: $wrfname имя пользователя $rtime время обновления милисекундах. $dt[18] параметр конфигурации строки пользователя usersdat.php 0 или 1 | |
|
Сообщение # 13 |
19.11.10 - 01:55:56
| | К0Т •
К Участник форума
|
Цитата:
LOSKAND пишет: Говоря про золотую середину я имелл виду дать возможность пользователю самому выбирать время обновления а также выбор включения и отключения автоматического обновления. например так... |
Метод хорош, если пишем отдельно чат. В случае с внедренным в форум чатом этот метод не подходит. Чат на форуме является лишь дополнительной возможностью и не должен мешать навигации пользователя по форуму. Т.е. 1) Страница не должна перегружаться сама по себе, неожиданно для пользователя. 2) После отправки сообщения в чат, пользователь должен остаться на той странице форума, на которой он был до отправки.
Кроме этого я хотел, чтобы отправка сообщения в чат была стандартной - текстовое окно и кнопка рядом (у WR-чата открывается отдельное окно ввода сообщения). Дополнительно хотел реализовать возможность пользователям выбирать цвет и вид сообщений. Еще у WR-чата не понравилась прокрутка сообщений. Нет возможности прокрутить самостоятельно все сообщения чата. Все это тоже реализовал.
С автоматическим обновлением сложнее, по выше перечисленным причинам. Но есть идея, которую попробую реализовать.
Основа моего чата - фрейм "iframe". Код PHP генерирует JavaScript, который на стороне клиента заполняет фрейм. Так сделал для того, чтобы избежать создания лишних файлов. Сейчас весь чат это два файла - php и dat (с сообщениями). Для реализации автоматического обновления сообщений в фрейме можно попробовать кодом php создавать html-файл на сервере, а в фрейм вставлять JavaScript, перезагружающий html-файл через заданный промежуток времени. Но с JavaScript в окне фрейма iframe могут быть самые разные фокусы. Например, автоматический скролинг документа в iframe реализовал 4-мя (!!!) способами. Все способы работали в Опера и Мозиле. А ИЕ упорно не хотел скроллировать окно.
Так что если есть еще идеи по реализации автоматического обновления содержимого фрейма iframe, не зависимо от основной страницы, пишите! И если кто-то раньше попробует метод сохранения файла и вставки скрипта в iframe для авт. обновления тоже пишите! | |
|
Сообщение # 14 |
19.11.10 - 09:56:32
| | LOSKAND •
L Участник форума
|
К0Т, стоп мотри внимательно на код я писал Код: <script language=javascript>function reload(){setTimeout('Refr();',$rtime);};function Refr(){document.location='chat.php'};function stopError(){return true;};</script> | тут как раз таки и идёт разчёт обновления окна в фрейме а не окна где этот фрейм расположен | |
|
Сообщение # 15 |
19.11.10 - 12:14:53
| | LOSKAND •
L Участник форума
|
просто вставить привёдёный мною код нужно на страницу в фрейме а не на ту где фрейм расположен. при этом скрипт из этого же примера работает во всех браузерах. | |
|
Сообщение # 16 |
19.11.10 - 12:39:22
|
| 790 •
7 Участник форума
|
Пркрутка окна в IE и других: frachat.document.body.scrollTop=10000 | |
|
Сообщение # 17 |
19.11.10 - 15:33:36
| | К0Т •
К Участник форума
|
Цитата:
790 пишет: Пркрутка окна в IE и других: frachat.document.body.scrollTop=10000 |
| |
|
Сообщение # 18 |
19.11.10 - 22:30:25
| | К0Т •
К Участник форума
|
Цитата:
790 пишет: Пркрутка окна в IE и других: frachat.document.body.scrollTop=10000 |
Это один из 4-х вариантов кода, который не заработал во фрейме в IE. | |
|
Сообщение # 19 |
19.11.10 - 22:30:48
| | К0Т •
К Участник форума
|
Цитата:
тут как раз таки и идёт разчёт обновления окна в фрейме а не окна где этот фрейм расположен |
Не работает | |
|
Сообщение # 20 |
19.11.10 - 22:49:28
| | LOSKAND •
L Участник форума
|
К0Т, на какой версии IE ты тестируеш ? | |
|
Сообщение # 21 |
19.11.10 - 22:50:37
| | К0Т •
К Участник форума
|
Еще раз внимательно. 1) Файл форума интегрируется в основную страницу форума - include("quickchat.php"); И все. Основная страница не перезагружается, не меняется. Сервер отправил клиенту все, что сгенерировал и все - больше ничего не делает.
2) В полученной клиентом странице есть ява-скрипт, который динамически заполняет фрейм. Как такового документа, который должен загружаться во фрейм нет. Вся инфа для фрейма создается на лету.
Единственный выход - создавать документ хтмл на сервере и уже его перезагружать таймером приведенным LOSKAND кодом. О чем я, собственно, и говорил. | |
|
Сообщение # 22 |
19.11.10 - 22:57:27
| | К0Т •
К Участник форума
|
Цитата:
LOSKAND пишет: К0Т, на какой версии IE ты тестируеш ? |
7.0.5730.13 | |
|
Сообщение # 23 |
19.11.10 - 22:58:23
| | 790 •
7 Участник форума
|
Цитата:
Это один из 4-х вариантов кода, который не заработал во фрейме в IE. |
Тогда так: setTimeout('frachat.document.body.scrollTop=10000',1000) | |
|
Сообщение # 24 |
20.11.10 - 13:10:59
| |
|