글등록 소스인데 버튼을 누르면 실행되게 할수 있을가요?
본문
<?
php
define('_INDEX_', true);
include_once('./_common.php');
function board_write($bo_table, $subject, $content, $mb_id)
{
global $g5;
$
mb
=
get_member
($mb_id);
$
write_table
=
"g5_write_{$bo_table}"
;
$
wr_num
=
get_next_num
($write_table);
$
wr_reply
=
''
;
$
ca_name
=
""
;
$
html
=
""
; $
secret
=
""
; $
mail
=
""
;
$
wr_subject
=
addslashes
(trim($subject));
$
wr_content
=
addslashes
(trim($content));
$
wr_link1
=
""
;
$
wr_link2
=
""
;
$
wr_email
=
""
;
$
wr_name
=
addslashes
($bo[bo_use_name] ? $mb[mb_name] : $mb[mb_nick]);
$sql = " insert into $write_table
set
wr_num
=
'$wr_num'
,
wr_reply
=
'$wr_reply'
,
wr_comment
=
0
,
ca_name
=
'$ca_name'
,
wr_option
=
'$html,$secret,$mail'
,
wr_subject
=
'$wr_subject'
,
wr_content
=
'$wr_content'
,
wr_link1
=
'$wr_link1'
,
wr_link2
=
'$wr_link2'
,
wr_link1_hit
=
0
,
wr_link2_hit
=
0
,
wr_hit
=
0
,
wr_good
=
0
,
wr_nogood
=
0
,
mb_id
=
'$mb_id'
,
wr_password
=
''
,
wr_name
=
'$wr_name'
,
wr_email
=
'$wr_email'
,
wr_homepage
=
''
,
wr_datetime
=
'".G5_TIME_YMDHIS."'
,
wr_last
=
'".G5_TIME_YMDHIS."'
,
wr_ip
=
'{$_SERVER['
REMOTE_ADDR']}',
wr_1
=
''
,
wr_2
=
''
,
wr_3
=
''
,
wr_4
=
''
,
wr_5
=
''
,
wr_6
=
''
,
wr_7
=
''
,
wr_8
=
''
,
wr_9
=
''
,
wr_10
=
''
";
sql_query($sql);
$
wr_id
=
sql_insert_id
();
sql_query(" update $write_table set
wr_parent
=
'$wr_id'
where
wr_id
=
'$wr_id'
");
sql_query(" insert into {$g5['board_new_table']} ( bo_table, wr_id, wr_parent, bn_datetime, mb_id ) values ( '{$bo_table}', '{$wr_id}', '{$wr_id}', '".G5_TIME_YMDHIS."', '$mb_id' ) ");
sql_query("update {$g5['board_table']} set
bo_count_write
= bo_count_write + 1 where
bo_table
=
'{$bo_table}'
");
return true;
}
$
bo_table
=
"1111"
; // 게시판 테이블 입력
$
filename
=
"subject.txt"
; // 제목 파일
$
fp
=
fopen
($filename, "r");
$
subject
=
fgets
($fp, '50');
fclose($fp);
$
filename
=
"content.txt"
; // 내용 파일
$
fp
=
fopen
($filename, "r");
$
content
=
fread
($fp, filesize($filename));
fclose($fp);
$
mb_id
=
"member_id"
; // 작성자 id
$result = board_write($bo_table, $subject, $content, $mb_id);
?>
위에 소스가 글등록해주는 소스인데 아래에 버튼을 넣어서 버튼을 누르면 코드가 실행되게 할수 있을까요?
답변 1
이렇게 해주시면 되겠습니다.
간략하게 해봤습니다.
test.php 파일을 생성합니다.
<?php
include_once('./_common.php');
function board_write($bo_table, $subject, $content, $mb_id)
{
global $g5;
$mb = get_member($mb_id);
$write_table = "g5_write_{$bo_table}";
$wr_num = get_next_num($write_table);
$wr_reply = '';
$ca_name = "";
$html = ""; $secret=""; $mail = "";
$wr_subject = addslashes(trim($subject));
$wr_content = addslashes(trim($content));
$wr_link1 = "";
$wr_link2 = "";
$wr_email = "";
$wr_name = '테스트';
$sql = " insert into $write_table
set wr_num = '$wr_num',
wr_reply = '$wr_reply',
wr_comment = 0,
ca_name = '$ca_name',
wr_option = '$html,$secret,$mail',
wr_subject = '$wr_subject',
wr_content = '$wr_content',
wr_link1 = '$wr_link1',
wr_link2 = '$wr_link2',
wr_link1_hit = 0,
wr_link2_hit = 0,
wr_hit = 0,
wr_good = 0,
wr_nogood = 0,
mb_id = '$mb_id',
wr_password = '',
wr_name = '$wr_name',
wr_email = '$wr_email',
wr_homepage = '',
wr_datetime = '".G5_TIME_YMDHIS."',
wr_last = '".G5_TIME_YMDHIS."',
wr_ip = '{$_SERVER['REMOTE_ADDR']}',
wr_1 = '',
wr_2 = '',
wr_3 = '',
wr_4 = '',
wr_5 = '',
wr_6 = '',
wr_7 = '',
wr_8 = '',
wr_9 = '',
wr_10 = '' ";
sql_query($sql);
$wr_id = sql_insert_id();
sql_query(" update $write_table set wr_parent = '$wr_id' where wr_id = '$wr_id' ");
sql_query(" insert into {$g5['board_new_table']} ( bo_table, wr_id, wr_parent, bn_datetime, mb_id ) values ( '{$bo_table}', '{$wr_id}', '{$wr_id}', '".G5_TIME_YMDHIS."', '$mb_id' ) ");
sql_query("update {$g5['board_table']} set bo_count_write = bo_count_write + 1 where bo_table = '{$bo_table}'");
return true;
}
$bo_table = "free"; // 게시판 테이블 입력
$filename = "subject.txt"; // 제목 파일
$fp = fopen($filename, "r");
$subject = fgets($fp, '50');
fclose($fp);
$filename = "content.txt"; // 내용 파일
$fp = fopen($filename, "r");
$content = fread($fp, filesize($filename));
fclose($fp);
$mb_id="admin"; // 작성자 id
$result = board_write($bo_table, $subject, $content, $mb_id);
?>
test2.php 파일생성합니다. (글등록 버튼)
<form name="frm" >
<input type="button" value="save" onclick="gnu_write();">
</form>
<iframe name="wif" src="./test.php" width="0" height="0" fraameborder='0'></iframe>
<script>
function gnu_write()
{
frm.action= "test.php";
frm.target = "wif";
frm.submit();
}
</script>