1
mysql에 내 데이터가 있습니다. PDS를 사용하여 PHP로 데이터를 가져온 다음 json_encode를 사용하여 js로 변환합니다. 다음 시나리오를 사용할 때 항상 출력 NaN을 얻고 정적 배열을 사용하면 작동합니다. 그래서 그것은 틀린 json 형식이거나 PHP로 된 것 같아요. 나는이 원활하게 배열 값을 설정하면 db dynamic에서 데이터를 가져 오는 것이 작동하지 않습니다.
이
작동 : codepen : http://codepen.io/pghiran/pen/QEvRjW동적 (DB에서 데이터를 끌어와 배열에 저장, 작동하지 않는 내 코드를이 일을 위해 :.
PHP
을$exchangeRates = array();
$sql = 'SELECT * FROM exchange';
try {
$stmt = $conn->prepare($sql);
$stmt->execute();
for ($i=0; $row=$stmt->fetch();$i++){
$exchangeRates[] = array($row['rs3'],$row['07'],$row['deadman'],$row['currency']);
}
}catch(exception $e){
return $e;
}
var_dump($exchangeRates);
{1} { ] => 문자열 (3) "3.5"[3] => 문자열 (1) "$"}}
,451,515,JS/JQUERY :
var amount = $('#amount'),
goldtype = $('#goldtype'),
exchange= <?php echo json_encode($exchangeRates);?>,
price = $('#price');
console.log(exchange);
goldtype.change(function() {
var exchangeIndex = $("select[name='goldtype'] option:selected").index();
price.val(amount.val() * exchange[exchangeIndex]);
})
CONSOLE.LOG (교환)를 표시 : exchangeRates에
[Array[4]]
0
:
Array[4]
0
:
"0.5"
1
:
"1.5"
2
:
"3.5"
3
:
"$"
length
:
4
https://gyazo.com/b167b38d62d9c4b567f31cc35ce00289
왜냐하면'json_encode'가 필요 없기 때문이다.'amount.val()'에 데이터를 곱할 때'[0]'을 당신의 호출에 추가하기 만하면된다. 예 – Matt
var exchange = php echo json_encode ($ exchangeRates);?>,이 줄을 지우면 변수가됩니다. 데이터가 없습니다. . – swipeales
'exchange = php echo $ exchangeRates;?>'이미 codepen에 표시 한 하드 코드와 비슷한 배열 형식입니다. – Matt