DB 에 주소저장 방법

DB 에 주소저장 방법

QA

DB 에 주소저장 방법

본문


<?php
$con=mysqli_connect("localhost","sun7684","qwer1234","sun7684");
 
if (mysqli_connect_errno($con))
{
   echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
 
$ID = $_GET['ID'];
$WR_2 = $_GET['WR_2'];
$WR_3 = $_GET['WR_3'];
$WR_4 = $_GET['WR_4'];

$result = mysqli_query($con,"SELECT mb_point FROM g5_member where mb_id='$ID'");
 
$row = mysqli_fetch_array($result);
$data = $row[0];

 
if($data){
echo number_format($data);
}
 $data_stream = "'".$_GET['ID']."','".$_GET['WR_2']."','".$_GET['WR_3']."','".$_GET['WR_4']."'";
    $query = "insert into g5_write_z1(mb_id,wr_2,wr_3,wr_4) values (".$data_stream.")";
    $result = mysqli_query($con, $query);

mysqli_close($con);
?>

위 코드로 실행을 하게되면  아래 처럼 주소가 정상적으로 표시가 됩니다.

27c5f563c23243b5bc689b5a341de7a0_1508579094_9868.jpg
이상태에서 전화번호로 검색을 하면

27c5f563c23243b5bc689b5a341de7a0_1508579163_7988.jpg
이처럼 열람중이라고만 뜨고.. 전화번호와 주소가 보이지 않습니다


그래서.. 다시 아래처럼 코드 변경을 해서... 진행을 하니

전화 번호 검색을 해도.. 정상적으로 검색이 됩니다

하지만 여기서 문제는  아래 사진처럼 디비 저장될때 주소부분이 저장이 안되는 증상입니다

27c5f563c23243b5bc689b5a341de7a0_1508579343_8826.jpg
 


아래에 코드 올려 드립니다......

wr_2  필드가 주소 부분인데요    주소를 저장하는 방법을 알고 싶습니다.




<?php
$con=mysqli_connect("localhost","sun7684","qwer1234","sun7684");
 
if (mysqli_connect_errno($con))
{
   echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
 
$ID = $_GET['ID'];
$WR_2 = $_GET['WR_2'];
$WR_3 = $_GET['WR_3'];
$WR_4 = $_GET['WR_4'];


$result = mysqli_query($con,"SELECT mb_point FROM g5_member where mb_id='$ID'");
 
$row = mysqli_fetch_array($result);
$data = $row[0];


 
if($data){
echo number_format($data);
}


 
mysqli_close($con);
?>






<?php


define('_INDEX_', true);
include_once('./_common.php');






function insert_write($newpost)
{
	global $g5;


	//게시판 테이블 정보
	$bo_table = $newpost[bo_table];
	if(!strlen($bo_table)) return FALSE; //bo_table 값이 지정되지 않았습니다.
	$board = sql_fetch(" select * from {$g5['board_table']} where bo_table = '$bo_table' ");
	if(!$board) return FALSE; //bo_table이 존재하지 않습니다.
	
	//회원정보 및 권한 확인
    $member = get_member($newpost[mb_id]);
    if(!$member) return FALSE; //mb_id가 존재하지 않습니다.
    //if($board[bo_write_level] > $member[mb_level]) return FALSE; //글쓰기 권한이 없습니다.
	
	//카테고리 설정
    $ca_name = $newpost[ca_name];
	if ($ca_name && strpos($board[bo_category_list], $ca_name) === FALSE){
		$category_list = $board[bo_category_list]."|".$ca_name;
		$sql = " update {$g5['board_table']} set bo_category_list = '$category_list' where bo_table = '$bo_table' ";
		sql_query($sql);
	}


	//변수 정리
    $write_table = $g5[write_prefix].$bo_table;
    $wr_num = get_next_num($write_table);
    $ca_name = addslashes($ca_name);
    $html = "html1";
    $secret = "";
    $mail = "";
    $wr_subject = addslashes(trim($newpost[wr_subject]));
    $wr_content = addslashes(trim($newpost[wr_content]));
    if(!$wr_subject) return FALSE; //글 제목이 없습니다.
    if(!$wr_content) return FALSE; //글 내용이 없습니다.
    $mb_id = $member[mb_id];
    $wr_password = $member[mb_password];
    $wr_name = $board[bo_use_name] ? $member[mb_name] : $member[mb_nick];
	$wr_email = $member[mb_email];
	$wr_homepage = $member[mb_homepage];
    for($i=1; $i<=10; $i++){
        $wr = "wr_{$i}";
        ${$wr} = addslashes($newpost[$wr]);
    }
    $wr_link1 = $newpost[wr_link1];
    $wr_link2 = $newpost[wr_link2];
	
	//글 입력하기
	$sql = " insert into $write_table
                set wr_num = '$wr_num',
                     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_password',
                     wr_name = '$wr_name',
                     wr_email = '$wr_email',
                     wr_homepage = '$wr_homepage',
                     wr_datetime = '".G5_TIME_YMDHIS."',
                     wr_last = '".G5_TIME_YMDHIS."',
                     wr_ip = '{$_SERVER['REMOTE_ADDR']}',
                     wr_1 = '$wr_1',
                     wr_2 = '$wr_2',
                     wr_3 = '$wr_3',
                     wr_4 = '$wr_4',
                     wr_5 = '$wr_5',
                     wr_6 = '$wr_6',
                     wr_7 = '$wr_7',
                     wr_8 = '$wr_8',
                     wr_9 = '$wr_9',
                     wr_10 = '$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' "); //부모 아이디에 UPDATE
	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' ) "); //새글 INSERT    
    sql_query(" update {$g5['board_table']} set bo_count_write = bo_count_write + 1 where bo_table = '{$bo_table}' "); //게시글 1 증가
	
	return array('bo_table' => $bo_table, 'wr_id' => $wr_id, 'sca' => $ca_name);
	//return TRUE;
	
}




//$newpost[mb_id], $newpost[bo_table], $newpost[wr_subject], $newpost[wr_content] 값만 지정하고,
//insert_write($newpost); 라고 실행시키면 글이 해당 게시판에 올라갑니다.


$newpost = array(
	'mb_id' => $_GET['ID'],
	'wr_2' => $_GET['WR_2'],
	'wr_3' => $_GET['WR_3'],
	'wr_4' => $_GET['WR_4'],
	'bo_table' => 'z1',
	'wr_subject' => G5_TIME_YMDHIS.' - 자동등록글',
	'wr_content' => "<span style='font-size:14pt;'>이 글은 자동으로 등록되었습니다.</span>"
);


$result = insert_write($newpost);


?>

이 질문에 댓글 쓰기 :

답변 2

print_r($_GET);


상기 소스를 통해, 앞에서 주소 값이 넘어오는 지 확인해보세요.

그누보드에서는 여분필드 wr_1 ~ wr_10 을 기본적으로 활용할 수 있도록 되어 있습니다.


저장 소스 /bbs/write_update.php 에 보면 wr_1 ~ wr_10 이 DB 에 insert 됨을 확인할 수 있습니다.


그래서 그누보드의 스킨 구조에서 여분필드를 활용하는 경우에는,


wr_2 를 주소 필드로 활용하고자 한다면,


write.skin.php 에 주소 : <input type="text" name="wr_2" />

view.skin.php 에서 표시는 주소 : <?php echo $view['wr_2']?>

list.skin.php 에서 표시는 <?php echo $list[$i]['wr_2'] ?>

검색은, 기존 검색에 <option value="wr_2"<?php echo get_selected($sfl, 'wr_2', true); ?>>주소</option>

만 추가해주는 식으로 하면 됩니다.


별도 정보를 별도 저장하는 부분의 코딩을 하지 않아도 됩니다.


비슷한 스킨 소스를 참고하면 https://sir.kr/bbs/board.php?bo_table=g5_skin&wr_id=7806


이해가 되실 거라 생각합니다.

답변 주신 대로 되어 있습니다..
그런데도 안되서 문제입니다.. ㅠㅠㅠㅠ

위 질문중 첫번째 소스로 적용시  주소까지 정상적으로 디비에 저장이 되는데
게시판에서 글쓰기 버튼을 누르고 쓴 글은 검색이 되는데
소스로 저장된 게시글은 검색이 안됩니다

두번째 소스는 검색이 된느데.. 리스트 메뉴에 주소가 저장이 안되는 증상이고요

둘중에 하나만 작동 하면 되는데.... 둘다 한가지씩의 문제가 생기네요 ㅠㅠㅠ

답변을 작성하시기 전에 로그인 해주세요.
전체 38
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT