邮箱: "> ..........">
当前位置:Gxlcms > PHP教程 > 初学script+ajax数据提交问题

初学script+ajax数据提交问题

时间:2021-07-01 10:21:17 帮助过:18人阅读

HTML中的内容
............
密码:


邮箱:


............






edit_server.php中的内容:

require_once "functions.php";
connectDb();
if($_GET['action']=="1")
{
$pw = $_POST['pw'];
$email = $_POST['email'];
mysql_query("UPDATE basic_information SET pw = '$pw',email = '$email');
if(mysql_errno()){
echo mysql_error();
}else{
getData(1);
}
}


回复讨论(解决方案)

几个问题:
1、edit_server.php 中要检查 $_GET['action']=="1"
但 ajax 的 url 中没有参数(url:"edit_server.php",)
要这样 url:"edit_server.php?action=" + i,
2、sendData='{"action":"'+i+'","pw":'+getElementByName+',"email":'+getElementByName+':}'
这样赋值后 sendData 是字符串,不会被 php 解析成 $_POST 数组
要这样

sendData = {pw : document.getElementByName(‘pw').value, email : document.getElementByName('emal'][0].value }

前端ajax 提交时用了post方式 ,后端PHP 用 if( $_GET['action']=="1") { ....} 来验证所以问题就来了。

修改后





后台:

if($_POST['action']=="1")
{
$pw = $_POST['pw'];
$email = $_POST['email'];
mysql_query("UPDATE basic_information SET pw = '$pw',email = '$email');
if(mysql_errno()){
echo mysql_error();
}else{
getData(1);
}
}

但依然无法运行,控制台提示ReferenceError: getElementByName is not defined

getElementsByName

改完后,数据依然没有传入

换种ajax方式,初始化后,在提交,发送参数,接收返回数据。

非常感谢诸位大神,已成功解决问题。
if(i=="1"){sendData={pw: document.getElementByName("pw").value,email: document.getElementByName("email").value};}

人气教程排行