묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
php 결과물 배열변수를 스크립트에서 사용하기
2007.09.06 16:50
php의 결과물로 배열을 만들어 놓았습니다.
예를 들어 $P[1], $P[2],...... $P[100] 까지를 만들었어요...
이넘들을 자바스크립트 쪽에서 쓰려고 합니다...
그래서 예를 들어 S라는 배열을 스크립트 쪽에서 정의하구요
var S=new Array()
S[1] = "<?=$P[1]?>";
S[2] = "<?=$P[2]?>";
S[3] = "<?=$P[3]?>";
...
S[100] = "<?=$P[100]?>";
이렇게 하니 가지고 와서 사용할 수가 있더라구요..
그런데 100개나 되는걸 일일이 가지고 올수도 없고
케이스에 따라 배열의 갯수가 틀려져서.....
for문을 돌리려고 합니다.
그래서 단순히 아래처럼 생각하고 했는데....
for (var i=1;i<=100;i++) {
S[i] = "<?=$P[i]?>";
}
허걱...그런데..^^;;
S[i]의 i는 변수로 인지되어 S[1], S[2]... 이렇게 증가가 되는데
$P[i]의 i는 변수로 인식이 안되고 그냥 i라는 글자로 인식이 되서
php의 변수값을 도통 가지고 올수가 없습니다.
어떻게 해결해야 하는지 알려주세요..
예를 들어 $P[1], $P[2],...... $P[100] 까지를 만들었어요...
이넘들을 자바스크립트 쪽에서 쓰려고 합니다...
그래서 예를 들어 S라는 배열을 스크립트 쪽에서 정의하구요
var S=new Array()
S[1] = "<?=$P[1]?>";
S[2] = "<?=$P[2]?>";
S[3] = "<?=$P[3]?>";
...
S[100] = "<?=$P[100]?>";
이렇게 하니 가지고 와서 사용할 수가 있더라구요..
그런데 100개나 되는걸 일일이 가지고 올수도 없고
케이스에 따라 배열의 갯수가 틀려져서.....
for문을 돌리려고 합니다.
그래서 단순히 아래처럼 생각하고 했는데....
for (var i=1;i<=100;i++) {
S[i] = "<?=$P[i]?>";
}
허걱...그런데..^^;;
S[i]의 i는 변수로 인지되어 S[1], S[2]... 이렇게 증가가 되는데
$P[i]의 i는 변수로 인식이 안되고 그냥 i라는 글자로 인식이 되서
php의 변수값을 도통 가지고 올수가 없습니다.
어떻게 해결해야 하는지 알려주세요..
그안에서 자바스크립트에 쓰일 변수를 지정합니다
$que="SELECT * FROM 테이블 이름 WHERE 불러올필드명 = '변수조건' order by 필드명 asc"; //이부분은 환경에 맞게 세팅합니다
$result=mysql_query($que) or die(mysql_error());
while($scriptData=mysql_fetch_array($result)) {
echo"$scriptData[불러들일 필드명]"."<br />";
}
위와 같이 코딩해서 보면 원하는 배열이 에코로 한줄씩 표기될 것입니다
자바 스크립트에서 쓰일 배열명이 한줄씩 제대로 표기가 된다면
화일문 안에 다음과 같이 넣어주면 됩니다
$que="SELECT * FROM 테이블 이름 WHERE 불러올필드명 = '변수조건' order by 필드명 asc"; //이부분은 환경에 맞게 세팅합니다
$result=mysql_query($que) or die(mysql_error());
while($scriptData=mysql_fetch_array($result)) {
$scriptAry .="S[i] = \""."$scriptData[불러들일 필드명]"."\"\n";
}
그리고 나서 자바스크립트 변수를 써줘야 할곳에
<?=$scriptAry?> 만 써주면 됩니다