[수정]고수님들 살려주십시요..ㅠㅠ
본문
이것 저것 해본 결과 아래 소스처럼 했더니 셀렉트 선택시 wr_1,wr_4에 값이 뿌려지긴 하는데,
ajax.wr_code.php에서 db 쿼리문도 안먹히고 wr_1과 wr_4에 그냥 숫자 1만 찍힙니다.
미치고 환장하다 못해 이젠 거품 물겠습니다. 이것 때문에 당췌 몇주째 해메고 있는지..ㅠㅠ
고수님들 제발 도와주십시요ㅠㅠ
소스는 아래에 적여 놓겠습니다.
<script type="text/javascript">
function chkcode(){
if(fwrite.wr_2.value=="100") { fwrite.wr_3.value="a; }
if(fwrite.wr_2.value=="101") { fwrite.wr_3.value="b; }
if(fwrite.wr_2.value=="102") { fwrite.wr_3.value="c; }
if(fwrite.wr_2.value=="103") { fwrite.wr_3.value="d" }
if(fwrite.wr_2.value=="104") { fwrite.wr_3.value="e; }
if(fwrite.wr_2.value=="105") { fwrite.wr_3.value="f; }
if(fwrite.wr_2.value=="106") { fwrite.wr_3.value="g; }
if(fwrite.wr_2.value=="107") { fwrite.wr_3.value="h; }
if(fwrite.wr_2.value=="108") { fwrite.wr_3.value="i; }
if(fwrite.wr_2.value=="109") { fwrite.wr_3.value="j; }
if(fwrite.wr_2.value=="131") { fwrite.wr_3.value="k; }
//var x=$("#wr_2 option:selected").val();
//$("#wr_2n").val(x);
function ajaxSelectCode(val) {
$.ajax({
type: 'POST',
url: g5_bbs_url+'/ajax.wr_code.php',
dataType : 'json',
data: {wr_2: $("#wr_2").val()},
success: function(data) {
$('#wr_1').val(data.wr_1);
$('#wr_4').val(data.wr_4);
}
});
}
</script>
---생략 ---
<tr>
<td><input type="text" name="wr_1" value="<?php echo $wr_1 ?>" id="wr_1" required class="num" maxlength="20"></td>
<td>
<select class="selc" name="wr_2" id="wr_2" value="<?php echo $wr_2 ?>" onchange="chkcode()" class='selc' required>
<option value="">업체코드</option>
<option value="100" <?php if($wr_2 == "100") echo "selected=\"selected\""; ?> label="100" />100</option>
<option value="101" <?php if($wr_2 == "101") echo "selected=\"selected\""; ?> label="101" />101</option>
<option value="102" <?php if($wr_2 == "102") echo "selected=\"selected\""; ?> label="102" />102</option>
<option value="103" <?php if($wr_2 == "103") echo "selected=\"selected\""; ?> label="103" />103</option>
<option value="104" <?php if($wr_2 == "104") echo "selected=\"selected\""; ?> label="104" />104</option>
<option value="105" <?php if($wr_2 == "105") echo "selected=\"selected\""; ?> label="105" />105</option>
<option value="106" <?php if($wr_2 == "106") echo "selected=\"selected\""; ?> label="106" />106</option>
<option value="107" <?php if($wr_2 == "107") echo "selected=\"selected\""; ?> label="107" />107</option>
<option value="108" <?php if($wr_2 == "108") echo "selected=\"selected\""; ?> label="108" />108</option>
<option value="109" <?php if($wr_2 == "109") echo "selected=\"selected\""; ?> label="109" />109</option>
<option value="131" <?php if($wr_2 == "131") echo "selected=\"selected\""; ?> label="131" />131</option>
</select>
</td>
<td><input type="text" name="wr_3" value="<?php echo $wr_3; ?>" id="wr_3" readonly='readonly' required class="name" maxlength="20"></td>
<td><input type="text" name="wr_4" value="<?php echo $wr_4 ?>" id="wr_4" required class="num" maxlength="20"></td>
-- ajax.wr_code.php --
<?php
<?php
include_once('./_common.php');
$wr_2 = $_POST['wr_2'];
$w2 = $wr_2;
$sql = sql_fetch(" select wr_1, wr_4 from $write_table where wr_2='$w2'" );
if($row['wr_1'] && $row['wr_4'] == '') {
$wr_1 = $wr_4 = 1;
}
else {
$wr_1 = $row['wr_1']+1;
$wr_4 = $row['wr_4']+1;
}
$data = array('wr_1' => $wr_1, 'wr_4' => $wr_4, 'wr_2n' => $wr_2);
echo json_encode($data);
?>
?>
답변 7
$sql = sql_fetch(" select wr_1, wr_4 from $write_table where wr_2='$w2'" );
이게 아니라 $row = ... 가 되어야 해요
비어있는 값이 가서 플러스 1이 되니 각각 1값이 들어있을 수 있어요.
$sql = sql_fetch(" select wr_1, wr_4 from $write_table where wr_2='$w2'" ); // ★ $sql
if($row['wr_1'] && $row['wr_4'] == '') { // ★ $row ?????
...
우선 체크..
bo_table 값을 넘기지 않으면 $write_table은 빈값이지 않을까요? 그러면 쿼리 에러가 날꺼구요...
Post로 넘기니까 data에 있어야 겠죠.
function ajaxSelectCode(val) {
var bo_table = "<?php echo $bo_table?>";
$.ajax({
type: 'POST',
url: g5_bbs_url+'/ajax.wr_code.php',
dataType : 'json',
data: {
wr_2: $("#wr_2").val(),
bo_table: bo_table
},
success: function(data) {
$('#wr_1').val(data.wr_1);
$('#wr_4').val(data.wr_4);
$('#wr_2n').val(data.wr_2n);
}
});
}
아 여러분 죄송해요...깜빡하고 이 글을 안썼네요..
현재 DB에는 3개의 글이 있는데 현재로선 wr_2는 모두 102가 저장되어있고
3개가 저장(당시엔 그냥 타이핑 한 값이었어요)되어 있다보니 wr_1은 1부터3까지
wr_4도 마찬가지로 1~3까지 각각 저장되어있는 상태에요
그래서 셀렉트 선택을 102를 중점으로 두고 선택하는데요~
반응이 있는 거라면 분명 wr_1과 wr_4에는 +1씩 되어 출력해줘야 하는데 sql문 이런거
상관없이 무조건 각각 1만 출력되네요..
우선 letsgolee 님 말씀을 토대로 미친짓 한번 또 해볼께요ㅠㅠ
해보고 나서 글 올리겠습니다.
letsgolee님 왕계란님 두 분께 감사드립니다. 두 분덕에 해결 했습니다.
첫째 bo_table이 넘어가질 않아 sql문 먹히지 않았던 것이었습니다.
두 분의 소스를 토대로 이것 저것 짜집기도 해보고 넣어보기도 하고 지워보기도 하고
하다 결국 성공했습니다.
그래서 제가 어떻게 했는지 질문 및 답변글에 올려놓을 까 합니다.
두 분 모두 감사드립니다.