웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
대화방을 만들어보쟈~
2001.06.03 07:31
대화방 만들기가 어려울것같지만 그렇지만은 않은가보죠?
제작환경(;;) : PHP 4.0.0&4.0.6dev, MYSQL (버전을 모르겠당..), 아파치 1.3.12&1.3.19
일단은 로그인 화면을 만들어야겠죠?
보통의 폼을 이용하여 $id라는 변수값으로 보내고 쿠키로 등록한뒤에 대화방 페이지로 이동합니다.
chat_1.php///////////////////
<?
if($id){
// 쿠키 설정
setcookie("chat",$id,0,"/");
// 페이지 이동
echo "<script>location.replace('chat_2.php')</script>";
}
?>
<form method=post action=<?=$PHP_SELF?>>
<input name=id>
<input type=submit value=입장>
</form>
네, 그리고 이제 본격적으로 대화방을 만들어야겠죠?
일단 mysql에 테이블을 만듭니다.
테이블 구조 ///////////////////////
no int not null auto_increment,
id varchar(20) not null,
chat varchar(255) not null,
color varchar(20) not null,
primary key(no)
채팅 상태는 <iframe>태그를 사용하고,
등록 폼은 밖에 합니다.
등록 폼에는 하는 말,그리고 색이 들어갑니다.
밖 파일(chat_2.html)///////////////////////////
<div align=center>
<iframe src=chat_2_stats.php></iframe>
<form method=post action=send_chat.php>
내용 <input name=text>
글씨색상 <select name="fontcolor" style=width:30>
<option selected value="black" style=background:black></option>
<option value="red" style=background:red></option>
<option value="yellow" style=background:yellow></option>
<option value="blue" style=background:blue></option>
<option value="navy" style=background:navy></option>
<option value="gray" style=background:gray></option>
<option value="silver" style=background:silver></option>
<option value="orange" style=background:orange></option>
<option value="gold" style=background:gold></option></select>
<input value=입력 type=submit>
</form>
</div>
안에 있는 파일은 처음엔 mysql에 연결합니다.
$conn = mysql_connect ("서버","아이디","비번");
mysql_select_db ("테이블이 있는 db");
그리고 쿼리를 보내고 데이터를 출력합니다.
echo ("<table width=100>");
$res = mysql_query ("select * from chat",$conn);
while($chat = mysql_fetch_array($res)){
echo ("<tr height=20><td width=100 bgcolor=black style=color:white>$chat[id]</td><td width=5></td><td><span style='color:$chat[color];'>$chat[text]</span></td></tr>");
}
echo ("</table>");
아참, 그리고 실시간으로 채팅하려면 이 자바스크립트가 있어야 합니다.
<script>setTimeOut("location.reload()",5000)</script>
5초에 한번씩 페이지를 새로고침 하라는 얘깁니다.
안 파일(chat_2_stat.php)////////////////////////////
<?
$conn = mysql_connect ("서버","아이디","비번");
mysql_select_db ("테이블이 있는 db");
echo ("<table width=100>");
$res = mysql_query ("select * from chat",$conn);
while($chat = mysql_fetch_array($res)){
echo ("<tr height=20><td width=100 bgcolor=black style=color:white>$chat[id]</td><td width=5></td><td><span style='color:$chat[color];'>$chat[chat]</span></td></tr>");
}
echo ("</table>");
?>
<script>setTimeOut("location.reload()",5000)</script>
그리고 마지막 파일 send_chat.php입니다.
대화글을 올려주는 파일입니다.
역시 mysql에 연결합니다.
$conn = mysql_connect ("서버","아이디","비번");
mysql_select_db ("테이블이 있는 db");
그리고 글을 한번 걸러줍니다(태그 해제)
$text = str_replace("<","<",$text);
$text = str_replace(">",">",$text);
마지막으로 제일 중요한 쿼리...
mysql_query("insert into chat values(null,'$HTTP_COOKIE_VARS[chat]','$text','$fontcolor')",$conn);
그리고 페이지를 이동합니다.
echo "<script>location.replace('chat_2.html")</script>";
글 보내기 (send_chat.php)/////////////////////
<?
$conn = mysql_connect ("서버","아이디","비번");
mysql_select_db ("테이블이 있는 db");
$text = str_replace("<","<",$text);
$text = str_replace(">",">",$text);
mysql_query("insert into chat values(null,'$HTTP_COOKIE_VARS[chat]','$text','$fontcolor')",$conn);
echo "<script>location.replace('chat_2.html")</script>";
?>
알아서 샤바샤바 쓰시길 ^^
헥헥... 힘드네요...이런거 하나 쓰기두..
제작환경(;;) : PHP 4.0.0&4.0.6dev, MYSQL (버전을 모르겠당..), 아파치 1.3.12&1.3.19
일단은 로그인 화면을 만들어야겠죠?
보통의 폼을 이용하여 $id라는 변수값으로 보내고 쿠키로 등록한뒤에 대화방 페이지로 이동합니다.
chat_1.php///////////////////
<?
if($id){
// 쿠키 설정
setcookie("chat",$id,0,"/");
// 페이지 이동
echo "<script>location.replace('chat_2.php')</script>";
}
?>
<form method=post action=<?=$PHP_SELF?>>
<input name=id>
<input type=submit value=입장>
</form>
네, 그리고 이제 본격적으로 대화방을 만들어야겠죠?
일단 mysql에 테이블을 만듭니다.
테이블 구조 ///////////////////////
no int not null auto_increment,
id varchar(20) not null,
chat varchar(255) not null,
color varchar(20) not null,
primary key(no)
채팅 상태는 <iframe>태그를 사용하고,
등록 폼은 밖에 합니다.
등록 폼에는 하는 말,그리고 색이 들어갑니다.
밖 파일(chat_2.html)///////////////////////////
<div align=center>
<iframe src=chat_2_stats.php></iframe>
<form method=post action=send_chat.php>
내용 <input name=text>
글씨색상 <select name="fontcolor" style=width:30>
<option selected value="black" style=background:black></option>
<option value="red" style=background:red></option>
<option value="yellow" style=background:yellow></option>
<option value="blue" style=background:blue></option>
<option value="navy" style=background:navy></option>
<option value="gray" style=background:gray></option>
<option value="silver" style=background:silver></option>
<option value="orange" style=background:orange></option>
<option value="gold" style=background:gold></option></select>
<input value=입력 type=submit>
</form>
</div>
안에 있는 파일은 처음엔 mysql에 연결합니다.
$conn = mysql_connect ("서버","아이디","비번");
mysql_select_db ("테이블이 있는 db");
그리고 쿼리를 보내고 데이터를 출력합니다.
echo ("<table width=100>");
$res = mysql_query ("select * from chat",$conn);
while($chat = mysql_fetch_array($res)){
echo ("<tr height=20><td width=100 bgcolor=black style=color:white>$chat[id]</td><td width=5></td><td><span style='color:$chat[color];'>$chat[text]</span></td></tr>");
}
echo ("</table>");
아참, 그리고 실시간으로 채팅하려면 이 자바스크립트가 있어야 합니다.
<script>setTimeOut("location.reload()",5000)</script>
5초에 한번씩 페이지를 새로고침 하라는 얘깁니다.
안 파일(chat_2_stat.php)////////////////////////////
<?
$conn = mysql_connect ("서버","아이디","비번");
mysql_select_db ("테이블이 있는 db");
echo ("<table width=100>");
$res = mysql_query ("select * from chat",$conn);
while($chat = mysql_fetch_array($res)){
echo ("<tr height=20><td width=100 bgcolor=black style=color:white>$chat[id]</td><td width=5></td><td><span style='color:$chat[color];'>$chat[chat]</span></td></tr>");
}
echo ("</table>");
?>
<script>setTimeOut("location.reload()",5000)</script>
그리고 마지막 파일 send_chat.php입니다.
대화글을 올려주는 파일입니다.
역시 mysql에 연결합니다.
$conn = mysql_connect ("서버","아이디","비번");
mysql_select_db ("테이블이 있는 db");
그리고 글을 한번 걸러줍니다(태그 해제)
$text = str_replace("<","<",$text);
$text = str_replace(">",">",$text);
마지막으로 제일 중요한 쿼리...
mysql_query("insert into chat values(null,'$HTTP_COOKIE_VARS[chat]','$text','$fontcolor')",$conn);
그리고 페이지를 이동합니다.
echo "<script>location.replace('chat_2.html")</script>";
글 보내기 (send_chat.php)/////////////////////
<?
$conn = mysql_connect ("서버","아이디","비번");
mysql_select_db ("테이블이 있는 db");
$text = str_replace("<","<",$text);
$text = str_replace(">",">",$text);
mysql_query("insert into chat values(null,'$HTTP_COOKIE_VARS[chat]','$text','$fontcolor')",$conn);
echo "<script>location.replace('chat_2.html")</script>";
?>
알아서 샤바샤바 쓰시길 ^^
헥헥... 힘드네요...이런거 하나 쓰기두..
댓글 20
제목 | 글쓴이 | 날짜 |
---|---|---|
로그인 후 그룹별로 다른 페이지로 가기 - 업데이트판 v1.5 [19] | 무대포2 | 2009.06.24 |
로그인 페이지 만드는 방법 [5] | 산토 | 2009.06.12 |
별도 페이지 로그인방법 | cornet | 2009.05.21 |
내가 작성 한 글에 대한 일괄 삭제/이동/복사 권한 주기
[2]
![]() | 개돌 | 2009.05.15 |
BNU님의 Planner XE 1.2 버젼(일정관리)
[9]
![]() | 개돌 | 2009.04.21 |
다양한 언어로 홈페이지 서비스하기 - 무식한 방법 [4] | 멀리서 | 2009.04.21 |
주민등록 입력 폼 1.2.0
[55]
![]() | 개돌 | 2009.04.10 |
요청하신 모듈을 찾을 수 없습니다 문제해결 방법 [2] | 반도체맨 | 2009.04.09 |
클릭마다 조회수 올리기 [1.4.0]
[12]
![]() | 지B | 2009.04.04 |
특정그룹 멤버 표시 위젯에서 이름 순 정렬하기
[2]
![]() | 이재한744 | 2009.03.30 |
로그인 포인트 출력 위젯을 수정해보자 | [花穗] | 2009.03.27 |
제로보드의 아이콘을 내 맘대로 변경하기...(2)
[2]
![]() | winter548 | 2009.03.23 |
브라우저 크기에 따라 본문 가로 크기 자동 조절 [1] | 개돌 | 2009.03.18 |
첨부파일의 외부 무단 링크 차단하기(XE) 게시판설정
[7]
![]() | 왕초보왕따 | 2009.03.02 |
테스트용 아이디 탈퇴 막기 [1] | SMaker | 2009.02.26 |
게시판에서 사이트 관리자만 볼수있는 항목 만들기 [1] | ☜ TeRy ☞ | 2009.02.13 |
사이트 이전팁( files 폴더) [6] | 샤이니라 | 2009.01.28 |
(재 수정) 제로보드 XE 신버젼에 Lavalic 2 설치하기 [4] | 조성우371 | 2009.01.16 |
제로보드XE 쉽게 업데이트 하는 방법.. [13] | 청개구리00 | 2009.01.12 |
로그인한 회원만 최근 게시글, 검색등 볼수 있도록 하기 [3] | [_)s | 2008.12.31 |