很好的一天!我的问题在这里并不常见。。。有很多问题与我的问题类似,但当我比较时,有一个问题是相同的,但他没有像这样声明他/她的变量:$page=array()代码>,但我声明了它,但它仍然返回值的第一个字符。
数组中的PHP字符串只返回第一个字符
这是我的代码:
主php文件
脚本:
var saveStudRegInfo=[[],[]];
studInfoLN = document.getElementById('studRegLN').value;
studInfoFN = document.getElementById('studRegFN').value;
studInfoMN = document.getElementById('studRegMN').value;
studInfoGender = document.getElementById('studRegGender').value;
studInfoCourse = document.getElementById('studRegCourse').value;
studInfoID = document.getElementById('studRegID').value;
studInfoRFID = document.getElementById('studRegRFID').value;
saveStudRegInfo[0][0] = studInfoLN;
saveStudRegInfo[0][1] = studInfoFN;
saveStudRegInfo[0][2] = studInfoMN;
saveStudRegInfo[0][3] = studInfoGender;
saveStudRegInfo[0][4] = studInfoCourse;
saveStudRegInfo[0][5] = Number(studInfoID);
saveStudRegInfo[0][6] = studInfoRFID;
saveStudRegInfo[0][7] = studPicFilename;
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("saveWorkSched").innerHTML = this.responseText;
}
};
xhttp.open("GET", "ajax/saveSAWorkSched.php?studRegInfo="+saveStudRegInfo+"&schedList="+getSAWorkSched+"&studInfoID="+studInfoID, true);
xhttp.send();
saveSAWorkSched。php
$studPerInfo = array();
$studPerInfo = $_GET['studRegInfo'];
$studLN=$studFN=$studMN=$studGender=$studCourse=$studID=$studRFID=$studPicFilename='';
if (!empty($studPerInfo)) {
$studLN = $studPerInfo[0];
$studFN = $studPerInfo[1];
$studMN = $studPerInfo[2];
$studGender = $studPerInfo[3];
$studCourse = $studPerInfo[4];
$studID = (int)$studPerInfo[5];
$studRFID = $studPerInfo[6];
$studPicFilename = $studPerInfo[7];
}
echo var_dump($studLN);
结果将是:
string(1) "d"
下面是整个数组($studPerInfo
)的var\u转储。
string(74) "Dela Cruz,Juan,Masipag,male,BSInfoTech,1234567890,2342342342342,dummy.jpg,"
我的建议是先处理客户端。如果不知道数组的确切结构,也不知道如何将其拆分成不同的查询参数,只需将整个数组编码为json,然后在服务器端解码就相当容易了。试试这样的东西:
xhttp.open("GET", "ajax/saveSAWorkSched.php?studRegInfo="+encodeURIComponent(JSON.stringify(saveStudRegInfo)));
然后在php中,您可以从json解码:
$studPerInfo = json_decode($_GET['studRegInfo'],1);
您得到的值是字符串,要将其用作数组,您需要分解它
使用爆炸。
$studPerInfo = explode(',', $_GET['studRegInfo']);
这是字符串值,要将其用作数组,需要将其分解。
$studPerInfo = explode(',', $_GET['studRegInfo']);
print_r($studPerInfo);
在数组中获取结果。