자바스크립트 post 배열변수 전송문제 채택완료
내쿠
5년 전
조회 4,059
초보입니다.
$sql = "select * from g5_point_et where mb_id_et = '{$member['mb_id']}' "; $qry = sql_query($sql);
for ($i=0; $row=sql_fetch_array($qry); $i++) { //출력물은 값이 있다면 배열변수$row['part']로 모든 값이나옵니다
//예시는 3개 줄(값)
?>
// 이렇게만 나옵니다; 가변적으로 나와야할텐데요
예) 첫번째 클릭-- 첫번째 배열값
두번째 클릭-- 두번째 배열값
세번째-- 세번째 배열값
댓글을 작성하려면 로그인이 필요합니다.
답변 3개
채택된 답변
+20 포인트
5년 전
</p>
<pre>
<code><?php
$sql = "select * from g5_point_et where mb_id_et = '{$member['mb_id']}' ";
$qry = sql_query($sql);
?>
<form name="myForm" action="page2.php" method="post">
<input type="hidden" name="toto" value="">
<table>
<?php
while($row=sql_fetch_array($qry)){
?>
<tr><td><a href="javascript:mySubmit('<?php echo $row['part']?>')"><? echo $row['part'] ?></a></td></tr>
<?php
}
?>
</table>
</form>
<script>
function mySubmit(val){
var f = document.myForm;
f.toto.value = val;
f.submit();
}
</script></code></pre>
<p><code>
for문 사용 방법에 문제가 있네요.
그냥 쉽게 while문을 사용해 봤습니다.
로그인 후 평가할 수 있습니다
답변에 대한 댓글 2개
�
내쿠
5년 전
�
독구파랑
5년 전
part와 pnum 을 따로 넘기는 것 보다는 변수를 하나 만들어서 넘기는 것이 좋을 것 같습니다.
ex) $toto_val = $row['part'].$row['pnum']
ex) $toto_val = $row['part'].$row['pnum']
댓글을 작성하려면 로그인이 필요합니다.
답변에 대한 댓글 1개
�
내쿠
5년 전
안 됩니다.
감사합니다~
감사합니다~
댓글을 작성하려면 로그인이 필요합니다.
답변에 대한 댓글 2개
�
내쿠
5년 전
제건 어렵습니다,
감사합니다~
---
폴라베어님;;
아래 자세하신 풀이 진심으로 감사드립니다.
아직 한 눈에 안들어와서요..ㅠㅠ
제가 많이 부족하여 주신 글보고 차근차근 공부해보겠습니다.
감사합니다~
감사합니다~
---
폴라베어님;;
아래 자세하신 풀이 진심으로 감사드립니다.
아직 한 눈에 안들어와서요..ㅠㅠ
제가 많이 부족하여 주신 글보고 차근차근 공부해보겠습니다.
감사합니다~
�
폴라베어
5년 전
아래와 같이 회차번호가 유추가능해야지 코드가 간결해집니다.
[code]
<?php
// $sql = "select * from g5_point_et where mb_id_et = '{$member['mb_id']}' ";
// $qry = sql_query($sql);
//예시는 3개 줄(값)
$row = [];
$row[0]['turn'] = '100'; // 회차번호
$row[0]['part'] = '3,4,1,2,3,4,3,3,3,1,1,2,2,4,2,1,2,1,2,4';
$row[1]['turn'] = '101';
$row[1]['part'] = '2,3,1,2,3,4,3,3,3,1,1,2,4,2,2,1,2,1,2,4';
$row[2]['turn'] = '102';
$row[2]['part'] = '3,1,2,1,1,,,2,2,,,,,,3,,1,2,3';
$r=count($row);
// echo '<pre>';
// var_dump($row, $r);
?>
<form name="myForm" action="page2.php" method="post">
<input type="hidden" name="toto" value="">
<table>
<?php
for ($i=0; $i<$r; $i++) { //출력물은 값이 있다면 배열변수$row['part']로 모든 값이나옵니다
?>
<tr><td><a href="javascript:mySubmit(<?php echo $row[$i]['turn'] ?>)"><? echo $row[$i]['part'] ?></a></td></tr>
<?php
}
?>
</table>
</form>
<script>
function mySubmit(val){
var f = document.myForm;
f.toto.value = val; // 이렇게 하면 값은 여러줄 중 맨 마지막 출력결과값만 넘어갑니다.
f.submit();
}
</script>
[/code]
[code]
<?php
// $sql = "select * from g5_point_et where mb_id_et = '{$member['mb_id']}' ";
// $qry = sql_query($sql);
//예시는 3개 줄(값)
$row = [];
$row[0]['turn'] = '100'; // 회차번호
$row[0]['part'] = '3,4,1,2,3,4,3,3,3,1,1,2,2,4,2,1,2,1,2,4';
$row[1]['turn'] = '101';
$row[1]['part'] = '2,3,1,2,3,4,3,3,3,1,1,2,4,2,2,1,2,1,2,4';
$row[2]['turn'] = '102';
$row[2]['part'] = '3,1,2,1,1,,,2,2,,,,,,3,,1,2,3';
$r=count($row);
// echo '<pre>';
// var_dump($row, $r);
?>
<form name="myForm" action="page2.php" method="post">
<input type="hidden" name="toto" value="">
<table>
<?php
for ($i=0; $i<$r; $i++) { //출력물은 값이 있다면 배열변수$row['part']로 모든 값이나옵니다
?>
<tr><td><a href="javascript:mySubmit(<?php echo $row[$i]['turn'] ?>)"><? echo $row[$i]['part'] ?></a></td></tr>
<?php
}
?>
</table>
</form>
<script>
function mySubmit(val){
var f = document.myForm;
f.toto.value = val; // 이렇게 하면 값은 여러줄 중 맨 마지막 출력결과값만 넘어갑니다.
f.submit();
}
</script>
[/code]
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
적용하여 해결보았습니다. 가변적인 배열값이 잘 넘어옵니다..
기왕에 한 가지 더 궁금한게요
<?php echo $row['part']?> // 잘 넘어옴
또 다른 컬럼의 배열값도 동시에 가져오려면?// $row['pnum'] <-- 이것도 같이 넘기려면?
<a href="javascript:mySubmit('<?php echo $row['part']?><?php echo $row['pnum']?>')"><? echo $row['part'] ?></a>
----
이렇게 하면 넘어오는데요..맞게 하는건지요..?
감사합니다~