php에서 checkbox쓰기

php 2011.10.25 15:36
php에서는 체크박스의 이름을 array로 똑같이 주게되면 form action으로 받는 php에서 체크된것만 받을 수 있다.

**<javascript>
//전체체크
function checkAll(CheckBox,checked){

var i;
if(CheckBox.length){
for(i=0; i < CheckBox.length; i++){
CheckBox[i].checked=checked;
}
}else{
CheckBox.checked=checked;
}
}
 
//넘기자 
function highlight() {
for (i = j = 0; i < document.getElementsByName('chklist[]').length; i++) {
if (document.getElementsByName('chklist[]')[i].checked == true) j++;
}
if (j == 0) { alert('선택된 항목이 없습니다!'); return false; }
document.NLIST.action="a.php";
document.NLIST.method="post";
document.NLIST.submit();


**<html source>
<input type=button name=btnhighlight value='  강조 ' onclick="javascript:highlight();">

<!--전체체크하기-->
<input type="checkbox" onclick="javascript:checkAll(getElementsByName('chklist[]'),this.checked);">

<!--form안의 checkbox-->
<form name=NLIST method=post>
<input type="checkbox" name="chklist[]" value="{$AList[idx]->a}" >
</form> 

**<a.php>
//많이 본 뉴스 중 강조할것만 업데이트
$con = DBConnect();
$chklist = $_POST["chklist"];

if(count($aList)>1){
foreach($aList as $ival){
if ($chklist != "") {//체크되어 있지 않은 리스트
if (in_array($ival->a, $chklist)) { //체크된 것들은 강조컬럼 "Y"로 update
                     //echo "일치하는 a====>".$ival->a
            $aManager->updateHighlightNews($ival->a,"Y", $con);
}else{ //체크안된 것들은 강조컬럼을 null로 update
$aManager->updateHighlightNews($ival->a, "" , $con);
}
}
}
}

DBClose($con);


function updateHighlightNews($a, $yn, & $con)
{
if($a == "") return false;

$sql = "UPDATE AAA"; 
if($yn == "Y") $sql .= " SET abc = '$yn' ";
else $sql .= " SET abc = Null ";
$sql .=" WHERE a = '$a'";
        //echo $sql; exit;

$RS = new CDatabase();
$RS->ExecSQL($con, $sql);
//if ($RS->FetchCount == 0) return false;

'php' 카테고리의 다른 글

php에서 checkbox쓰기  (0) 2011.10.25
Posted by verynyang poppy

참고url: http://www.jakartaproject.com/board-read.do?boardId=jakarta&boardNo=111043840598200&command=READ&t=1318229409292

웹프로젝트의 WEB-INF/lib/아래에
log4j-1.2.14.jar 를 두고
또 필요한것들이
commons-io.jar
commons-logging-api.jar
나에겐 위의 두개가 없어서 로그가 찍히지 않았다.
그리고 또 필요하다.
commons-lang-2.1.jar
commons-logging-1.1.1.jar


jsp파일에서 import를 해준다
<%@page import="org.apache.log4j.*"%>

쓰겠다고 선언을 해둔다.
<%!
 static Logger logger = Logger.getLogger("write.jsp"); //log4j를 위해
%>

그리고 쓰면된다
<%
 logger.info("::::/write.jsp-------------------------------------------");
 logger.debug("write");
%>

이런걸 하기전에 WEB-INF/classes/아래에 환경설정파일인log4j.properties 를 마련해둔다.
(마련은 참고 url을 보고 하면된다...캬하하)
xml파일로 마련해두면 웹서버를 다시시작해야하는 번거로움이 있다.



Posted by verynyang poppy
Apache의 httpd-vhosts.conf파일에 설정해 둔 virtual host에서
도메인 접속을 할 경우 페이지 접속이 되지 않았다.
하여 설정된 경로대로 에러로그를 보니
Directory index forbidden by Options directive: C:/Users/actionpuppy/workspace/someproj/
위와 같은 메세지가 있었다.
httpd-vhosts.conf파일에서 Directory태그를 추가해 내용을 넣어주고
보라색글씨부분을 꼭 넣어준다.
그럼 뜬다.

<VirtualHostabc.def.com:80>
    ServerAdmin webmaster@dummy-host2.example.com
    DocumentRoot "C:/Users/actionpuppy/workspace/someproj"
    ServerName abc.def.com
    <Directory "C:/Users/actionpuppy/workspace/someproj">
 Options Indexes MultiViews
 AllowOverride all
 Order allow,deny
 Allow from all
    </Directory>
    ErrorLog "logs/abc.def.com-error.log"
    CustomLog "logs/abc.def.com-access.log" common
</VirtualHost>
Posted by verynyang poppy


티스토리 툴바