여러 체크박스 체크하고, 또 수정할 경우에 체크된 상황을 그대로 보여주는,,,
너무 부족한 코드가 누군가에게 필요할까요?
리크루트 등에서 워낙 체크박스가 많아서...w write m modify
여러 체크박스 체크하고 저장했을 때, 체크박스의 값이 쉼표로 디비에 저장되는 경우,
그 페이지를 수정할 경우에 체크된 상황을 그대로 보여주는 함수입니다.
디비에는 순서대로 쉼표로 체크박스의 값들이 섞여저장되어는 경우에.. .
수정페이지에 들어갔을 때 제대로 골라서 체크된 값들만을 체크해주는 함수입니다.
function showCheckbox4wm($mainStrArr, $mainValArr, $colname, $subArr)
{
$idxArr = array();
if (!empty($subArr)) {
for ($i = 0; $i < sizeof($subArr); $i++) {
// 인덱스를 가져온다.
$temp = array_keys($mainValArr, $subArr[$i]);
// print_r2($temp[0]);
if(sizeof($temp) > 0){
$idxArr[] = $temp[0]; // 발견한 처음 인덱스만 모으면 된다.
}
}
sort($idxArr);
}
// 배열을 값의 크기대로 소팅을 한번 해준다. 아래 for문에서 순차적 검색을 해야하므로...
// print_r2($idxArr);
// print_r2($subArr);
echo "<ul>";
for ($i = 0; $i < sizeof($mainStrArr); $i++) {
//
if (!empty($subArr)) {
$checked = (in_array($i, $idxArr)) ? "checked" : "";
} else {
$checked = '';
}
echo "
<li>
<input type=\"checkbox\" name=\"{$colname}[{$i}]\" id=\"{$colname}_{$i}\" value=\"{$mainValArr[$i]}\" {$checked}>
<label for=\"{$colname}_{$i}\">{$mainStrArr[$i]}</label>
</li>
";
}
echo "</ul>";
}
예제,
$recruit_11ArrMain = array("국민연금", "건강보험", "고용보험", "산재보험", "건강검진", "차량유료보조금", "각종경조금");
$recruit_11ArrSub = "산재보험,건강검진,고용보험";
showCheckbox4wm($recruit_11ArrMain, $recruit_11ArrMain, "recruit_11", $recruit_11ArrSub);
일 때 나열되고, sub문자열에 있는 항목들이 체크되어 보여지도록 됩니다.
정성스럽게 만들어진 예제나 설명이 아니고 거칠어서 죄송합니다. Orz
게시판 목록
개발자팁
질문은 QA에서 해주시기 바랍니다.
| 번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|---|
| 4856 | PHP | 7년 전 | 5730 | ||
| 4855 | jQuery | 7년 전 | 3234 | ||
| 4854 | jQuery | 7년 전 | 2225 | ||
| 4853 | jQuery | 7년 전 | 2825 | ||
| 4852 | MySQL | 7년 전 | 2993 | ||
| 4851 | jQuery | 7년 전 | 2339 | ||
| 4850 | jQuery | 7년 전 | 2569 | ||
| 4849 | jQuery | 7년 전 | 4306 | ||
| 4848 | PHP |
|
7년 전 | 4246 | |
| 4847 | jQuery | 7년 전 | 4018 | ||
| 4846 | jQuery | 7년 전 | 2629 | ||
| 4845 | jQuery | 7년 전 | 2151 | ||
| 4844 | jQuery | 7년 전 | 2297 | ||
| 4843 | jQuery | 7년 전 | 3053 | ||
| 4842 | jQuery | 7년 전 | 2898 | ||
| 4841 | jQuery | 7년 전 | 2228 | ||
| 4840 | jQuery | 7년 전 | 1565 | ||
| 4839 | jQuery | 7년 전 | 2466 | ||
| 4838 | jQuery |
이에스씨코리아
|
7년 전 | 2311 | |
| 4837 | jQuery | 7년 전 | 2161 | ||
| 4836 | jQuery | 7년 전 | 2086 | ||
| 4835 | jQuery | 7년 전 | 1816 | ||
| 4834 | jQuery | 7년 전 | 1865 | ||
| 4833 | jQuery | 7년 전 | 1992 | ||
| 4832 | jQuery | 7년 전 | 2183 | ||
| 4831 | jQuery | 7년 전 | 2362 | ||
| 4830 | jQuery | 7년 전 | 2629 | ||
| 4829 | jQuery | 7년 전 | 1802 | ||
| 4828 | jQuery | 8년 전 | 2741 | ||
| 4827 | jQuery | 8년 전 | 2281 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기