php에서 javascript로 배열을 전달합니다. Javascript - php에서 js로 배열 전달
두 가지 질문이 있습니다. 1) 데이터베이스에서 필요한 것을 얻는 방법. 2) 데이터베이스에서 얻은 것을 javascript로 전송하는 방법, html 파일이 있습니다. 여기에는 javascript map.js 및 map.php 파일이 포함됩니다. 자바 스크립트는 정상적으로 실행되지만 php 파일은 정상적으로 실행되지 않습니다. HTML 파일에서 javascript와 php를 함께 연결하는 방법을 모르겠습니다. 나는 php와 javascript를 공부하지 않았고 약간 다른 전문 분야가 있지만 이제는 필요한 경우 무언가를 작성해야합니다.
다음은 map.php 코드입니다.
여기 기본에서 배열 요소의 형식 예인 요소 좌표 1과 좌표 2의 배열을 가져와야 합니다.
그런 다음 이 배열을 자바스크립트로 전달해야 합니다. 여기서는 이미 초기화되어 있지만 데이터베이스에서 채워야 합니다. 배열을 마커라고 합니다. map.js
varmap; var 포인트 = 1; //엔진에 대한 포인트 var markers = ( point1:, point2:, point3:, point4:, point5:, point6:, point7:, point8:, point9:, point10:, ); $(document).ready(function()( //지도 var latlng = new google.maps.LatLng(55.755786, 37.617633); var myOptions = ( 확대/축소: 13, 중심: latlng, mapTypeId: google.maps.MapTypeId.ROADMAP ); var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); //지도의 모든 지점 표시 var marker = ;for(i in markers)( marker[i] = new google . maps.Marker(( position: new google.maps.LatLng(markers[i], markers[i]), 지도: 지도 )); ) //map.panTo(new google.maps.LatLng(markers.point10, markers .point10)); //포인트 맵 엔진 function mover()( map.panTo(new google.maps.LatLng(markers["point"+point], markers["point"+point])); point ++ ; if(point>10)point=1; ) //지도는 사용되지 않음 google.maps.event.addListener(map, "idle", function()( setTimeout(mover, 500);//밀리초 단위의 시간 )) ; ));
추신 포인트가 부족하여 찬성하거나 답변할 방법이 없기 때문에 여기에 작성하겠습니다. 사용자에게 감사 가명,데카메론도와주기 위해. 구현하고 싶은 것을 얻었습니다. 모든 것이 작동합니다. 나는 데카메론의 아이디어를 사용했다. 나는 1차 또는 2차로 php로 작업한다. 오랫동안 나는 요점이 무엇인지, 왜 작동하지 않는지 사지 않았습니다. 알고 보니 html 파일이 있었고 그 안에 ?>그리고 또한
인라인 데이터를 수행하는 경우 항상 수행하는 것을 좋아했습니다.
기본 항목의 경우 AJAX 콜백을 유지합니다. 또한 데이터를 DOM 노드에 고정하려는 경우 "메타오브젝트" 방식이 제가 정말 좋아하는 방식입니다.
이것은 지금 보기에는 좋지 않을 수 있지만 해당 노드에 대한 정확한 고유 경로를 알 필요 없이 데이터를 DOM 노드에 직접 바인딩하는 효율적인 방법입니다. 특정 화면 요소에 연결해야 하는 데이터 세트가 많은 경우 매우 편리합니다.
나는 보통 jQuery 플러그인 http://noteslog.com/metaobjects/를 사용하지만 너무 쉬워서 가끔 직접 작성하기도 합니다(플러그인을 찾을 수 없었지만 작동 방식이 새롭습니다)
완료되면
$("div#foobar>div"). 얻다(). 데이터($yourarrayhere)
코드에 표시됩니다.
귀하의 질문에 답변하기 위해(그리고 제 답변은 주석 답변에 공백이 생겼습니다) 다음은 제가 사용하는 코드의 매우 단순화된 하위 집합입니다.
jQuery의 Javascript AJAX 핸들러:
$ . ajax(( 유형: "POST" , url: "BACKEND.php" , 시간 초과: 8000 , 데이터: "var1=" + myVar , 데이터 유형: "json" , 오류: function()( $("#DIVID" ). HTML( "이 방법이 가장 안전하지는 않지만 항상 자바스크립트 배열을 문자열로 변환한 다음 GET을 위해 URL을 통해 php로 전달할 수 있습니다.
for (var i = 0; i< jsarray . length ; i ++) { var x = jsarray [ i ]; urlstring += "myvalue="+ 엑스 +"&" ; } document . location . href = "mypage.php?" + urlstring ;그러면 php는 다음과 같습니다.
$phparray = $_GET["내 값"];도움이 되었기를 바랍니다
AJAX 및 jQuery. PHP에서 JavaScript로 매개변수 전달. JSON 사용
(2012년 10월 12일부터 변경)
AJAX 애플리케이션을 프로그래밍하는 사람들은 종종 PHP 또는 다른 프로그래밍 언어에서 JavaScript로 매개변수를 전달하는 문제에 직면합니다. 일반적으로 이것은 서버 스크립트만 액세스할 수 있는 데이터베이스에서 데이터를 전송합니다. 페이지를 다시 로드하지 않고 어떻게 클라이언트 컴퓨터에 표시할 수 있습니까? 이것이 이 기사의 내용입니다.
JSON(JavaScript Object Notation)에 대해 몇 마디 해봅시다. 이것은 텍스트 기반 데이터 교환 프로토콜로 보다 친숙한 XML과 다소 유사하지만 데이터가 보다 간결하게 기록됩니다. 원래 JavaScript의 요구 사항(따라서 이름)을 위해 개발되었지만 지금은 더 널리 사용됩니다.
예를 들어 PHP에서 JSON으로 배열을 작성하려는 경우 이런 일이 발생합니다.
소스 어레이:
$n = array("최소" => 15, "초" => 44);
JSON 형식의 동일한 배열:
("분":"15","초":"44")
JSON 형식에 대한 자세한 표기와 다양한 프로그래밍 언어에 대한 응용 프로그램은 웹 사이트에 나와 있습니다. http://www.json.org/
두 개의 파일로 구성되는 간단한 예제를 고려하십시오.
첫 번째 파일은 현재 분과 초를 포함하는 JSON 레코드를 생성하는 PHP 스크립트입니다.
두 번째 파일은 1초 간격으로 PHP 스크립트를 호출하고 JSON 레코드를 가져와 그 내용을 웹 페이지 컨테이너에 출력하는 jQuery 라이브러리를 사용하는 JavaScript가 포함된 HTML 페이지입니다.
파일 #1. json.php
header("Content-Type: application/x-javascript; charset=utf8"); $n = array("Min" =>date("i"), "초" => date("s")); 에코 json_encode($n); ?>함수에서 파일의 첫 번째 줄에 머리글() JSON 레코드의 출력 형식을 설정하고 문서가 UTF-8 인코딩의 JavaScript임을 나타냅니다.
두 번째 줄에서는 필드와 연관 배열을 형성합니다. 분그리고 비서, 우리는 분과 초의 현재 값을 씁니다.
세 번째 줄에서는 생성된 배열에서 JSON 레코드를 형성합니다.
주목! json_encode() 함수는 PHP 버전 5.2 이상에서만 작동합니다.