구분자로 나눈 여분필드 게시글 수정시 사라짐 ㅠㅠ
본문
여분필드를 사용해서 연락처 입력란을 추가할 때 위와 같이 3군데로 끊어서 입력값을 받고 싶은 경우
일반적인 방법으로 구현하면 칸마다 여분필드가 1개씩 총 3개가 필요한데
배열을 사용하면 여분필드 한 개를 이용해서 여러 개로 쪼개서 사용할 수가 있습니다.
가장 기본적인 예제입니다. 여분필드 wr_1 번을 사용했습니다.
1. 게시판 스킨 파일 write.skin.php
<?php
$hp = explode("-",$write['wr_1']); //연락처
?>
<tr>
<th scope="row">연락처</th>
<td><input type="text" name="hp[0]" value="<?php echo $hp[0] ?>" class="frm_input" size="10" maxlength="4"> - <input type="text" name="hp[1]" value="<?php echo $hp[1] ?>" class="frm_input" size="10" maxlength="4"> - <input type="text" name="hp[2]" value="<?php echo $hp[2] ?>" class="frm_input" size="10" maxlength="4"></td>
</tr>
2. 같은 스킨 폴더 안에 write_update.skin.php 파일 새로 추가. 파일 안의 내용은 이렇게..!-->
<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
// 휴대전화
$wr_1 = "$hp[0]-$hp[1]-$hp[2]";
sql_query(" update $write_table set wr_1 = '$wr_1' where wr_id = '$wr_id' ");
?>
요거 따라해서 DB에 입력은 잘 됩니다.
그러나 수정을 누르면 수정 페이지에서 입력되었던 값이 비어있어요.
게시물 수정시 수정페이지에서 이전에 입력했던 값이 남아있도록 하려면 어찌해야 할까요?
!-->답변 3
참고만 해 보세요.
<?php
$hps=explode("-",$write['wr_1']); //연락처
$hp1=$hps['0'];
$hp2=$hps['1'];
$hp3=$hps['2'];
?>
<tr>
<th scope="row">연락처</th>
<td><input type="text" name="hp1" value="<?php echo $hp1?>" class="frm_input" size="10" maxlength="4"> - <input type="text" name="hp2" value="<?php echo $hp2?>" class="frm_input" size="10" maxlength="4"> - <input type="text" name="hp3" value="<?php echo $hp3?>" class="frm_input" size="10" maxlength="4"></td>
</tr>
<?php
if(!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
// 휴대전화
$hp=$_POST['hp1']."-".$_POST['hp2']."-".$_POST['hp3'];
sql_query("update {$write_table} set wr_1='{$hp}' where wr_id='{$wr_id}'");
?>
write_update.skin.php 에
$wr_1 = @implode('-', $wr_1);
추가해보시겟어요..?
name는 동일해야 하는데 name="hp[0]" --> name="hp[]" 요게 문제같네요
<?php
$hp = explode("-",$write['wr_1']); //연락처
?>
아래처럼 변걍해 보세요.
<?php
$hp=explode("-",$wr_1); //연락처
?>