묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
[PHP]DB 업데이트하는데서.. 맘대로 안되는데요...
2002.03.20 05:21
일단 제가 쓴걸 올려놓겠습니다.
----------------------------------------------------------------------
<form name="product_select" method="post" action='<?php echo $PHP_SELF?>'>
<!-- Selection Scripts starts -->
<?
require "./lib.php";
$que="SELECT * FROM monitors order by size";
$data=mysql_query($que, $connect);
$total=mysql_affected_rows();
for($i=0; $i < $total; $i++){
mysql_data_seek($data,$i);
$info=mysql_fetch_array($data);
$file = $info[file_name];
echo"
<table border='0' cellpadding='0' cellspacing='0' width='200'>
<tr>
<td align='left' valign='middle' class='normal'><img src="./images/monitors/$info[file_name]" width='50' height='50' border='0' align='left' vspace='2'><b>$info[size] $info[company]<br>$info[model]<br>$info[display]</b><br>
<input type='checkbox' name='$file' value='0'>
<script language='javascript'>
if(product_select.$file.checked){
document.write ("<input type='hidden' name='mode1' value='up1'>");
}else{
document.write('');
}
</script>
<br><br></td>
</tr>
</table>
";
if($mode1 = 'up1'){
$que = "UPDATE monitors SET display = 1 WHERE file_name='$file'";
mysql_query( $que, $connect );
}else{
$que = "UPDATE monitors SET display = 0 WHERE file_name='$file'";
mysql_query( $que, $connect );
}
}
echo"
<input type='image' value='submit' src='./images/submit.gif' width='62' height='20' alt='' border='0'>
";
mysql_close($connect);
?>
<!-- Selection Scripts ends -->
</form>
----------------------------------------------------------------------
간단하게 설명을 하자면요 데이터 베이스에 들어가있는 모니터를 밖에다 출력을 시킨다음 첵크박스에 첵크를 하면 1이란 숫자가 데이터에 입력이되고 첵크를 안하면 0 이란 숫자가 입력되게 할려구 한겁니다.
그런데 <input type=checkbox name=$file value=0> 이렇게 해서 그 첵크박스에 값을 불르는데요 $file은 데이터베이스에 저장되있는 모니터 그림들 이름입니다. 이런식으로 데이터를 불러와서 출력시킨다음 첵크박스가 첵크됐으면 자바스크립트를 이용해서 <input type='hidden' name='mode1' value='up1'> 요걸 나오게 한다음 나왔으면 1을 넣고 안나오면 0이되고.. 뭐 이런식으로 한다고 열심히 머리굴려서 썼더만 자꾸 다 1 이 들어가요... 분명 쉬운 방법이 있을텐데 아직 php에는 허접이라서 잘 모르겠네요... 고수님들의 조언 다시한번 부탁드립니다.
---Always KYJ One and Only
----------------------------------------------------------------------
<form name="product_select" method="post" action='<?php echo $PHP_SELF?>'>
<!-- Selection Scripts starts -->
<?
require "./lib.php";
$que="SELECT * FROM monitors order by size";
$data=mysql_query($que, $connect);
$total=mysql_affected_rows();
for($i=0; $i < $total; $i++){
mysql_data_seek($data,$i);
$info=mysql_fetch_array($data);
$file = $info[file_name];
echo"
<table border='0' cellpadding='0' cellspacing='0' width='200'>
<tr>
<td align='left' valign='middle' class='normal'><img src="./images/monitors/$info[file_name]" width='50' height='50' border='0' align='left' vspace='2'><b>$info[size] $info[company]<br>$info[model]<br>$info[display]</b><br>
<input type='checkbox' name='$file' value='0'>
<script language='javascript'>
if(product_select.$file.checked){
document.write ("<input type='hidden' name='mode1' value='up1'>");
}else{
document.write('');
}
</script>
<br><br></td>
</tr>
</table>
";
if($mode1 = 'up1'){
$que = "UPDATE monitors SET display = 1 WHERE file_name='$file'";
mysql_query( $que, $connect );
}else{
$que = "UPDATE monitors SET display = 0 WHERE file_name='$file'";
mysql_query( $que, $connect );
}
}
echo"
<input type='image' value='submit' src='./images/submit.gif' width='62' height='20' alt='' border='0'>
";
mysql_close($connect);
?>
<!-- Selection Scripts ends -->
</form>
----------------------------------------------------------------------
간단하게 설명을 하자면요 데이터 베이스에 들어가있는 모니터를 밖에다 출력을 시킨다음 첵크박스에 첵크를 하면 1이란 숫자가 데이터에 입력이되고 첵크를 안하면 0 이란 숫자가 입력되게 할려구 한겁니다.
그런데 <input type=checkbox name=$file value=0> 이렇게 해서 그 첵크박스에 값을 불르는데요 $file은 데이터베이스에 저장되있는 모니터 그림들 이름입니다. 이런식으로 데이터를 불러와서 출력시킨다음 첵크박스가 첵크됐으면 자바스크립트를 이용해서 <input type='hidden' name='mode1' value='up1'> 요걸 나오게 한다음 나왔으면 1을 넣고 안나오면 0이되고.. 뭐 이런식으로 한다고 열심히 머리굴려서 썼더만 자꾸 다 1 이 들어가요... 분명 쉬운 방법이 있을텐데 아직 php에는 허접이라서 잘 모르겠네요... 고수님들의 조언 다시한번 부탁드립니다.
---Always KYJ One and Only