2015-01-08 4 views
2

자바 스크립트에서 두 개의 값을 내 arduino 웹 서버로 보내는 PHP 파일로 두 값을 보내려고합니다. 값은 문자열이고 내 소원은 이처럼 내 "pinArray"에서 핀 값을 보내는 것입니다 :

$.get("curl.php",{pin: pinArray[i],state:"1"}); 

을하지만 그것은 작동하지 않습니다

$.get("curl.php",{pin: "23",state:"1"}); 

그래도 잘 작동

내 "pinArray"는 다음과 같습니다.. :

,
var pinArray = ["23","25","27","29"]; 

PHP 파일은 "curl.php"는 다음과 같습니다

<?php 

    $pin = $_GET['pin']; 
$state = $_GET['state']; 

    // Create cURL call 
$service_url = 'http://arduino.local/digital/' . $pin . '/' . $state; 
echo 'alert("Pin: "+ $pin +" state: "+ $state)'; 
$curl = curl_init($service_url); 
.... 

이 사람이 좀 도와 주시겠습니까?

+3

첫 번째 호출 시점에서 'i'는 무엇입니까? 그리고'pinArray'가 정의되고, 초기화되고, 그 시점에서 범위 내에 있는지 확실합니까? Javascript 콘솔에 오류가 있습니까? –

+0

배열을 배열이나 다른 문자열로 제출할 수 없습니다. 배열을 직렬화하고 그 형식 데이터를 서버에 게시 할 필요가있을 것입니다. – Mike

+0

@Epik 배열이 전송되는 것을 어디서 볼 수 있습니까? –

답변

0

그것은

  • i
  • pinArray[i]는 요청시 정의되지 않은 요청의 시간에 정의되지 않은 요청의 시간에 정의되지 않은 하나

    • pinArray처럼 보인다

    크롬 애호가 또는 방화범이 끌려서 값을 디버그하려고 시도하십시오.

    console.log('pinArray', pinArray); 
    console.log('i', i); 
    console.log('pinArray[i]', pinArray[i]); 
    
    var data = {pin: pinArray[i],state:"1"}; 
    console.log('data ', data); 
    
    $.get("curl.php", data); 
    
  • +0

    확실히 pinArray [i]가 작동합니다. 매번 버튼을 누르면이 명령이 작동합니다. alert ("Outlet :"+ idArray [i] + "pin :"+ pinArray [i] + "= ON"); 명령이 수신되고 올바르게 전송되면 PHP 파일에서 어떻게 경고하겠습니까? 저는 PHP에서 아주 초보자입니다. 미리 감사드립니다. – Vikto