3 Раздела для чата

Otto

Старейшина
Репутация
115 / 756
Решил сделать в чате 3 раздела:
1. Общий
2. Торговый
3. Системный

Взял файл msg.php и впихнул в него DIV через которых просходит переход по разделам.
Код:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<meta http-equiv="Content-Language" content="ru">
<link rel="stylesheet" type="text/css" href="style3.css">
<script>
function to(name){
top.talk.talker.phrase.focus();
var s=top.talk.talker.phrase.value="to ["+name+"] "+top.talk.talker.phrase.value;
top.talk.talker.phrase.focus();
}
function private(name){
top.talk.talker.phrase.focus();
var s=top.talk.talker.phrase.value="private ["+name+"] "+top.talk.talker.phrase.value;
top.talk.talker.phrase.focus();
}
function clan(name){
top.talk.talker.phrase.focus();
var s=top.talk.talker.phrase.value="clan ["+name+"] "+top.talk.talker.phrase.value;
top.talk.talker.phrase.focus();
}
function AddTo(login){
        var o = top.frames['main'].Hint3Name;
        if ((o != null)&&(o != "")) {
            top.frames['main'].document.all(o).value=login;
            top.frames['main'].document.all(o).focus();
        } else {
                        to(login);
        }
}
</script>
<script LANGUAGE="JavaScript" SRC="scripts/ch2.87.js"></SCRIPT>
</head>
<body topmargin="0" leftmargin="0" border="1">
<DIV style="Z-INDEX: 2; width: 100%; LEFT: 0px; POSITION: absolute; TOP: 0px">
<script language="javascript" type="text/javascript">
function showtable (tblname) {
    hidesel(tblname);
    hidemenu(0);
    var el = document.getElementById('menu'+tblname);
    el.style.display = '';
    el.style.width = '';
    el.style.overflow = 'visible';
}

function hidesel (tblname) {
    for (var i=1;i<=3;i++) {
        if (i!=tblname) {
            var el = document.getElementById('el'+i);
            el.style.backgroundColor='';
            el.style.color='';
        }
    }    
}

function hidemenu (time) {
    for (var i=1;i<=3;i++) {
        var el = document.getElementById('menu'+i);
        el.style.display = 'none';
        el.style.width = '1px';
        el.style.overflow = 'hidden';
    }    
}

function jumptopath (path,topframe) {
    var rnd=Math.random();
    if (!topframe) {
        top.frames['main'].location.href = ''+path+'';
} else {
top.location.href = ''+path+'&rand='+rnd;
}

}
function el1() {
document.getElementById('el1');
document.getElementById('el1');
showtable('1');
}
</script>
<body onload="el1();">

<table cellspacing="0"  valign="bottom" cellpadding="0" width="100%" height="100%" border="0" align="left">
<tr align="middle" bgcolor="#EEEEEE">
<a onclick="showtable('1');">Общий</a> |
<a onclick="showtable('2');">Торговый</a> |
<a onclick="showtable('3');">Системный</a>
</tr>

<tr>
<td valign="top" align="left" colspan="3">


<TEXTAREA id="holdtext" STYLE="display:none;"></TEXTAREA>
<DIV id=oMenu CLASS="menu" onmouseout="closeMenu()"></DIV>
Место для Общего чата
<div id=mes oncontextmenu="OpenMenu()"></div>



Место для Торгового чата



Место для Системного чата


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

</DIV>
</body>
</html>
Проблема втом что при написании текста в окне чата, тексты чата вить понимаются наверх, вот за ним они тащит меню раздела. :)
Как сделать так что бы. Разделы были поверх окна чата. Попробовал разделить код, т.е. разделы меню перенёс в новый frame главного окна, а вывод оставил в файле msg.php, так тогда код не работает, и не получается перейти по разделам.
Тут большее работа верстки, и правильной размешения меню. Можно и по лучще сделать знаю на JS, переход по разделам, но для начало и этого хватит.
спс. :))


P.S> Перенесите тему в раздел "Антибк+ (mofh.ru)"
 
Решил сделать в чате 3 раздела:
1. Общий
2. Торговый
3. Системный

Взял файл msg.php и впихнул в него DIV через которых просходит переход по разделам.
Код:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<meta http-equiv="Content-Language" content="ru">
<link rel="stylesheet" type="text/css" href="style3.css">
<script>
function to(name){
top.talk.talker.phrase.focus();
var s=top.talk.talker.phrase.value="to ["+name+"] "+top.talk.talker.phrase.value;
top.talk.talker.phrase.focus();
}
function private(name){
top.talk.talker.phrase.focus();
var s=top.talk.talker.phrase.value="private ["+name+"] "+top.talk.talker.phrase.value;
top.talk.talker.phrase.focus();
}
function clan(name){
top.talk.talker.phrase.focus();
var s=top.talk.talker.phrase.value="clan ["+name+"] "+top.talk.talker.phrase.value;
top.talk.talker.phrase.focus();
}
function AddTo(login){
        var o = top.frames['main'].Hint3Name;
        if ((o != null)&&(o != "")) {
            top.frames['main'].document.all(o).value=login;
            top.frames['main'].document.all(o).focus();
        } else {
                        to(login);
        }
}
</script>
<script LANGUAGE="JavaScript" SRC="scripts/ch2.87.js"></SCRIPT>
</head>
<body topmargin="0" leftmargin="0" border="1">
<DIV style="Z-INDEX: 2; width: 100%; LEFT: 0px; POSITION: absolute; TOP: 0px">
<script language="javascript" type="text/javascript">
function showtable (tblname) {
    hidesel(tblname);
    hidemenu(0);
    var el = document.getElementById('menu'+tblname);
    el.style.display = '';
    el.style.width = '';
    el.style.overflow = 'visible';
}

function hidesel (tblname) {
    for (var i=1;i<=3;i++) {
        if (i!=tblname) {
            var el = document.getElementById('el'+i);
            el.style.backgroundColor='';
            el.style.color='';
        }
    }    
}

function hidemenu (time) {
    for (var i=1;i<=3;i++) {
        var el = document.getElementById('menu'+i);
        el.style.display = 'none';
        el.style.width = '1px';
        el.style.overflow = 'hidden';
    }    
}

function jumptopath (path,topframe) {
    var rnd=Math.random();
    if (!topframe) {
        top.frames['main'].location.href = ''+path+'';
} else {
top.location.href = ''+path+'&rand='+rnd;
}

}
function el1() {
document.getElementById('el1');
document.getElementById('el1');
showtable('1');
}
</script>
<body onload="el1();">

<table cellspacing="0"  valign="bottom" cellpadding="0" width="100%" height="100%" border="0" align="left">
<tr align="middle" bgcolor="#EEEEEE">
<a onclick="showtable('1');">Общий</a> |
<a onclick="showtable('2');">Торговый</a> |
<a onclick="showtable('3');">Системный</a>
</tr>

<tr>
<td valign="top" align="left" colspan="3">


<TEXTAREA id="holdtext" STYLE="display:none;"></TEXTAREA>
<DIV id=oMenu CLASS="menu" onmouseout="closeMenu()"></DIV>
Место для Общего чата
<div id=mes oncontextmenu="OpenMenu()"></div>



Место для Торгового чата



Место для Системного чата


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

</DIV>
</body>
</html>
Проблема втом что при написании текста в окне чата, тексты чата вить понимаются наверх, вот за ним они тащит меню раздела. :)
Как сделать так что бы. Разделы были поверх окна чата. Попробовал разделить код, т.е. разделы меню перенёс в новый frame главного окна, а вывод оставил в файле msg.php, так тогда код не работает, и не получается перейти по разделам.
Тут большее работа верстки, и правильной размешения меню. Можно и по лучще сделать знаю на JS, переход по разделам, но для начало и этого хватит.
спс. :))


P.S> Перенесите тему в раздел "Антибк+ (mofh.ru)"



razdeli frame na 2 chasta
 
meydan
Я писал что елси делит код на 2 части, т.е. на 2 фрейма, тогда код не работает праивльно, т.е. не работает переклчатель DIV.

Мне надо как нибудь часть кода который отвечает за переключения запизнуть в один фрейм, а то что выводится в другой фрейм. Но как я понял если делить код DIV, тогда никак сделать.
Скачал кучя скриптов на AJAX, JS... но там только DIV.

Думаю надо через JS через функцию сделать, вот только как... :) :)
Help please ))
 
Решил сделать в чате 3 раздела:
1. Общий
2. Торговый
3. Системный

Взял файл msg.php и впихнул в него DIV через которых просходит переход по разделам.
Код:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<meta http-equiv="Content-Language" content="ru">
<link rel="stylesheet" type="text/css" href="style3.css">
<script>
function to(name){
top.talk.talker.phrase.focus();
var s=top.talk.talker.phrase.value="to ["+name+"] "+top.talk.talker.phrase.value;
top.talk.talker.phrase.focus();
}
function private(name){
top.talk.talker.phrase.focus();
var s=top.talk.talker.phrase.value="private ["+name+"] "+top.talk.talker.phrase.value;
top.talk.talker.phrase.focus();
}
function clan(name){
top.talk.talker.phrase.focus();
var s=top.talk.talker.phrase.value="clan ["+name+"] "+top.talk.talker.phrase.value;
top.talk.talker.phrase.focus();
}
function AddTo(login){
        var o = top.frames['main'].Hint3Name;
        if ((o != null)&&(o != "")) {
            top.frames['main'].document.all(o).value=login;
            top.frames['main'].document.all(o).focus();
        } else {
                        to(login);
        }
}
</script>
<script LANGUAGE="JavaScript" SRC="scripts/ch2.87.js"></SCRIPT>
</head>
<body topmargin="0" leftmargin="0" border="1">
<DIV style="Z-INDEX: 2; width: 100%; LEFT: 0px; POSITION: absolute; TOP: 0px">
<script language="javascript" type="text/javascript">
function showtable (tblname) {
    hidesel(tblname);
    hidemenu(0);
    var el = document.getElementById('menu'+tblname);
    el.style.display = '';
    el.style.width = '';
    el.style.overflow = 'visible';
}

function hidesel (tblname) {
    for (var i=1;i<=3;i++) {
        if (i!=tblname) {
            var el = document.getElementById('el'+i);
            el.style.backgroundColor='';
            el.style.color='';
        }
    }    
}

function hidemenu (time) {
    for (var i=1;i<=3;i++) {
        var el = document.getElementById('menu'+i);
        el.style.display = 'none';
        el.style.width = '1px';
        el.style.overflow = 'hidden';
    }    
}

function jumptopath (path,topframe) {
    var rnd=Math.random();
    if (!topframe) {
        top.frames['main'].location.href = ''+path+'';
} else {
top.location.href = ''+path+'&rand='+rnd;
}

}
function el1() {
document.getElementById('el1');
document.getElementById('el1');
showtable('1');
}
</script>
<body onload="el1();">

<table cellspacing="0"  valign="bottom" cellpadding="0" width="100%" height="100%" border="0" align="left">
<tr align="middle" bgcolor="#EEEEEE">
<a onclick="showtable('1');">Общий</a> |
<a onclick="showtable('2');">Торговый</a> |
<a onclick="showtable('3');">Системный</a>
</tr>

<tr>
<td valign="top" align="left" colspan="3">


<TEXTAREA id="holdtext" STYLE="display:none;"></TEXTAREA>
<DIV id=oMenu CLASS="menu" onmouseout="closeMenu()"></DIV>
Место для Общего чата
<div id=mes oncontextmenu="OpenMenu()"></div>



Место для Торгового чата



Место для Системного чата


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

</DIV>
</body>
</html>
Проблема втом что при написании текста в окне чата, тексты чата вить понимаются наверх, вот за ним они тащит меню раздела. :)
Как сделать так что бы. Разделы были поверх окна чата. Попробовал разделить код, т.е. разделы меню перенёс в новый frame главного окна, а вывод оставил в файле msg.php, так тогда код не работает, и не получается перейти по разделам.
Тут большее работа верстки, и правильной размешения меню. Можно и по лучще сделать знаю на JS, переход по разделам, но для начало и этого хватит.
спс. :))

спс!!!! на вертуальной машине поставил пошло! и тоже подымается в месте с чатом((( вот тока с дизайном надо поработать) :)

ЗЫ: подкинь сюда .css на чат)
 
kupidon87
Это не полная версия доработки, ещё надо проверки делать в чате, что бы знать в коком разделе выводить сообщение чата.
P.S. Кокой css ты имеешь виду ? Возми простой morf и из него выташи style3.css да и вобще, всего пару классов надо рассписать. А точнее:
напр.
Приват сообщение посылаемое от себя: 03:33:00 [Otto] private [Dik] Привет
Приват сообщение получаемое для себя: 03:33:00 [Dik] private [Otto] Привет

Общее сообщение посылаемое от себя: 03:33:00 [Otto] to [Dik] Привет
Общее сообщение получаемое для себя: 03:33:00 [Dik] to [Otto] Привет

Системное сообщение для себя: 03:33:00 [Системное сообщение Всем] Всем привет
Системное сообщение для всех: 03:33:00 [Системное сообщение Вам] Вам привет

Объявление: 03:33:00 [Объявление] С Новым Годом
т.е. Оформляется: цвет текста, цвет фона текста, свой логин, получаетлся, сам текст и.т.д.
и.т.д. можно без конца перечислать, смотря кокие у вас сообщения.
 
kupidon87
Ну выкладывай что получится, там посмотрим. (кроме чата, т.к. я его заканчиваю сам) ))
 
Ну много чего попробовал, в итоге пришол к токому решению. напр есть 3 файла:

index.php
Код:
<frameset rows="50%,50%" FRAMEBORDER="0" BORDER="0" FRAMESPACING="0">
    <frame name="button" src="button.php">
    <frame name="echo" src="echo.php">
</frameset>

button.php
Код:
<input type=button value="Общий" class=btn onclick="java script:top.echo.location.href='msg.php?chat_razdel=1'">
<input type=button value="Торговый" class=btn onclick="java script:top.echo.location.href='msg.php?chat_razdel=2'">
<input type=button value="Системный" class=btn onclick="java script:top.echo.location.href='msg.php?chat_razdel=3'">

echo.php
Код:
<?
if(empty($chat_razdel)){$chat_razdel='1';}

if($chat_razdel==1){echo "<input type="normal" name="input1" maxlength=50 size="25"'>";}

else if ($chat_razdel==2){echo "<input type="normal" name="input2" maxlength=50 size="25"'>";}
else if ($chat_razdel==3){echo "<input type="normal" name="input3" maxlength=50 size="25"'>";}
?>

Вопрос:
напр. что нибудь напичатал в перемено input1 в поле input1, далее через фрейм button перешол на другую переменую напр. input2, перехожу назад на input1 и тут то что я напичатал удаляется. Как сделать так что бы оно было всегда через js надо как то...

Ну мне надо что бы работало как на DIV при переходе по пунктам.

P.S. для когото может и тупой вопрос, но всё же :)
 
kupidon87
Ну выкладывай что получится, там посмотрим. (кроме чата, т.к. я его заканчиваю сам) ))

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

если что вот ссылка: AntiBK+

или стукни в асю... там все обговарим...

ася 550309436
 
на каком опыте ты о чем :) помоему тему так розжували что сделать и самому уже можно :) отто и код выложил и андед как сделать)))просто включи мозги и сделай
 
Ребят кто юзал движок Мофх otshelnik ?
При входе в лаву забытых мастеров пишет вот так : Fatal error: Cannot redeclare pokaz() (previously declared in y:\home\test3.ru\www\functions.php:142) in y:\home\test3.ru\www\ek_shop.php on line 726
Двиг для меня незнакомый визуально ничего не нашёл.
 
Всем спаисбо, уже реализовали. Код не показать т.к. не только 1 файл правил.
Делал под Морф. Всем спасибо.
 
Ну много чего попробовал, в итоге пришол к токому решению. напр есть 3 файла:

index.php
Код:
<frameset rows="50%,50%" FRAMEBORDER="0" BORDER="0" FRAMESPACING="0">
    <frame name="button" src="button.php">
    <frame name="echo" src="echo.php">
</frameset>

button.php
Код:
<input type=button value="Общий" class=btn onclick="java script:top.echo.location.href='msg.php?chat_razdel=1'">
<input type=button value="Торговый" class=btn onclick="java script:top.echo.location.href='msg.php?chat_razdel=2'">
<input type=button value="Системный" class=btn onclick="java script:top.echo.location.href='msg.php?chat_razdel=3'">

echo.php
Код:
<?
if(empty($chat_razdel)){$chat_razdel='1';}

if($chat_razdel==1){echo "<input type="normal" name="input1" maxlength=50 size="25"'>";}

else if ($chat_razdel==2){echo "<input type="normal" name="input2" maxlength=50 size="25"'>";}
else if ($chat_razdel==3){echo "<input type="normal" name="input3" maxlength=50 size="25"'>";}
?>

Вопрос:
напр. что нибудь напичатал в перемено input1 в поле input1, далее через фрейм button перешол на другую переменую напр. input2, перехожу назад на input1 и тут то что я напичатал удаляется. Как сделать так что бы оно было всегда через js надо как то...

Ну мне надо что бы работало как на DIV при переходе по пунктам.

P.S. для когото может и тупой вопрос, но всё же :)


в обшем фрейме в которым не изменяется назнач новый переменный

Код:
<script>
var chat_turn=1;
</script>

а когда переходей на другую кнопку измени переменную


Вот мой код

Код:
<script>
function change(type)
{
    if (type==1)
    {
        top.chat_turn=1;
        document.getElementById('all').className = 'active';
        document.getElementById('system').className = 'inactive';
        top.frames.cf.chat.document.all['mes'].style.display = 'block';
        top.frames.cf.chat.document.all['mes1'].style.display = 'none';        
    }
    else if (type==2)
    {
        top.chat_turn=2;
        document.getElementById('system').className = 'active';
        document.getElementById('all').className = 'inactive';
        top.frames.cf.chat.document.all['mes'].style.display = 'none';    
        top.frames.cf.chat.document.all['mes1'].style.display = 'block';
    }
    top.cf.scrl(0);
    top.talk.F1.text.focus();

}
</script>
<body topmargin=0 marginheight=0 leftmargin=0 rightmargin=0>
<dl id="tabs" class="tabs">
    <dt class="active" onclick="change(1);" id = "all">Общий Чат</dt>
    <dt class="inactive" onclick="change(2);" id = "system">Системные сообщения</dt>
</dl>
 

Похожие темы

Сверху