<form> 태그
- <form>태그는 사용자의 데이터를 서버로 전송해 줄 수 있는 기능의 태그이다.
- 입력양식의 모든 태그들은 반드시 <form>~ </form>사이에 기록되어져야 한다.
- <form>태그의 구조
Action: 폼의 데이터를 처리해주는 화일명이 온다.
enctype: 폼의 데이터를 전송 시 암호화 방법 지정
method: 폼의 데이터를 전송하는 방법 지정(get,post)
name: 폼의 이름, 자바스크립트에서 사용
<input type="submit" name="" value="전송">
- submit : 입력된 내용을 서버측으로 보냄
<input type="reset" name="" value="취소">
- reset : 입력된 내용을 공백으로 만듬
여러개의 체크 박스에서 $_POST 가져오기
체크박스 name뒤에 배열형태로 []를 붙여주면 된다.
여러개의 name 이 존재한다면 check_list[] 처럼 배열형태로 보내주면 받을 때도 배열형태로 받을 수 있다.
checkbox 부분에서 value 부분은 예시라서 for 문 또는 foreach 문으로 값을 넣어야 하는 것은 생략했다.
<script>
function checkForm(frm){
var chkbox = frm['check_list[]'];
var cnt = 0;
for (var i = 0 ; i < chkbox.length; i++) {
if (chkbox[i].checked) {
cnt++;
}
}
if(cnt == 0){
alert('선택된 체크박스가 없습니다');
return false;
}
document.frm.action = "delete.php";
document.frm.submit();
}
</script>
<form name="frm" method="POST" action="javascript:checkForm(document.frm);">
<input type="checkbox" name="check_list[]" value="<?=$R[$i]?>" />
<input type="checkbox" name="check_list[]" value="<?=$R[$i]?>" />
<input type="checkbox" name="check_list[]" value="<?=$R[$i]?>" />
</form>
=== delete.php ===
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['check_list'])){
$flag = false;
foreach($_POST['check_list'] as $item){
$sql ="delete from test where item='".$item."'";
if(!mysqli_query($dbconn,$sql)){
die('Error:'.mysql_error());
} else {
$flag = true;
}
}
if($flag == true){
echo "<script>location.href='index.php';</script>";
}
}
?>
'Web 프로그램 > PHP 응용 및 활용' 카테고리의 다른 글
PHP 글자수 줄임 표시 (0) | 2018.06.09 |
---|---|
PHP to JSP (0) | 2018.04.28 |
PHP 배열 합집합, 교집합, 차집합, 대칭차집합 (0) | 2018.04.01 |
PHP 배열함수 정렬 - sort, rsort, ksort, krsort, asort, arsort (0) | 2018.03.31 |
PHP 로또번호 생성 (0) | 2018.03.28 |