배열 array 분리방법 문의드립니다. 채택완료
현재 아래와같이 array를 DB에 저장하려고하는데 {n}_test, {n}_date, {n}_date, {n}_desexing는 다른 테이블에 따로 저장하려고하는데 어떻게 하면 좋을지 조언 구해봅니다.. ㅜㅜ
* 초록색은 초록색 테이블에, 주황색은 주황색끼리 저장
* _test, _date, _gender, _desexing은 0~n 이 생성될 수 있습니다.
Array
(
[w] => u
[url] => %2Fbbs%2Fregister_form.php
[mb_tel] => 01012341234
[mb_email] => test@test
[agree] => on
[agree2] => on
[0_test] => 이름1
[0_date] => 2025-02-04
[0_gender] => male
[1_test] => 이름2
[1_date] => 2025-02-05
[0_gender] => female
[2_test] => 이름3
[2_date] => 2025-02-26
[2_gender] => male
[2_desexing] => on
)
답변 3개
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
댓글을 작성하려면 로그인이 필요합니다.
w값이 u라는 것은 insert가 아니라 update를 사용해야하는 것 같은데 조건이 없으니
insert 예는 다음처럼...
어떤 필드에 어느 값을 넣을 것인지 설명이 없으니 필드명과 넘어온 변수명이 같다는 가정하에
굳이 배열에 담을 필요는 없을 듯 하군요
배열에 넣으려면 $qry1, $qry2 대신 $arr1[$key] = $value; $arr2[$key] = $value;
ksort($_POST);
$qry1 = $deli1 = $qry2 = $deli2 = '';
foreach( $_POST as $key=>$value){
if($key=='w') continue;
if( $key =='url' || $key=='mb_tel' || $key=='mb_email' || $key=='agree' || $key=='agree2' ){
$qry1.=$deli1. "$key='$value'; $deli1=',';
}else{ $qry2.=$deli2. "$key='$value'; $deli2=','; }
}
sql_query("insert into table1 set $qry1");
sql_query("insert into table2 set $qry2");
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인