Oen*_*n44 0 javascript php arrays
正如我在标题中提到的,如何将JS数组值传递给PHP然后使用mysqli发送?
以下是有助于以后发送值的函数.
function getPlayerName() {
return player.Name;
}
function getPlayerClass() {
return player.Class;
}
function getPlayerLevel() {
return player.Level;
}
Run Code Online (Sandbox Code Playgroud)
对我来说最重要的是我如何将这个数组传递给PHP?
@Edit
我正在使用store.js来保存播放器数组值(Local Storrage).这是在创建新玩家时保存它的功能.
function saveData(){
var playerName = document.getElementById('nickname');
var warriorClass = document.getElementById('warrior');
var mageClass = document.getElementById('mage');
var archerClass = document.getElementById('archer');
if(warriorClass.checked){
store.set('player', {
Name: playerName.value,
Class: 'Warrior',
Level: playerLevel,
XP: playerXP,
HP: playerHP,
MaxHP: playerMaxHP
});
}
else if(mageClass.checked){
store.set('player', {
Name: playerName.value,
Class: 'Mage',
Level: playerLevel,
XP: playerXP,
HP: playerHP,
MaxHP: playerMaxHP
});
}
else if(archerClass.checked){
store.set('player', {
Name: playerName.value,
Class: 'Archer',
Level: playerLevel,
XP: playerXP,
HP: playerHP,
MaxHP: playerMaxHP
});
}
}
Run Code Online (Sandbox Code Playgroud)
@ Edit2
有了Skamielina的建议我做了这样的事情:
$.ajax({
method: "POST",
url: "top15.php",
data: { Name: player.Name, Class: player.Class, Level: player.Level }
})
Run Code Online (Sandbox Code Playgroud)
并且top15.php有这个:
<?php
echo 'Name: ' . $_POST['Name'] . '<br/>';
echo 'Level: ' . $_POST['Level'] . '<br/>';
echo 'Class: ' . $_POST['Class'] . '<br/>';
?>
Run Code Online (Sandbox Code Playgroud)
现在,在网页上
Name:
Level:
Class:
Run Code Online (Sandbox Code Playgroud)
但是,FireBug控制台显示
Name: Oen<br/>Level: 1<br/>Class: Mage<br/>
Run Code Online (Sandbox Code Playgroud)
愚蠢的我......不是阵列,我的意思是变量.天啊,抱歉这个错误:x
使用jQuery和$.ajax函数(参见docs):
$.ajax({
method: "POST",
url: "some.php",
data: { name: player.Name, class: player.Class, level: player.Level }
})
Run Code Online (Sandbox Code Playgroud)
接下来,你需要有php文件来处理来自浏览器的请求,并最终返回结果.