HTML中的内容
............
密码:
邮箱:
...
<スクリプト>
関数 submit(i)
{
var sendData="";
if(i=="1"){sendData=' {"action":"'+i+'","pw":'+getElementByName+',"email":'+getElementByName+':}';}
$.ajax({
timeout: 5000,
",
url : "edit_server.php"、
getData(1); // これはページを開くために使用される関数です
edit_server.php の内容:
require_once "関数。 php";
connectDb();
if($_GET['action']=="1")
{
$pw = $_POST['pw'];
$email = $_POST['email'];
mysql_query("UPDATE 基本情報 SET pw = '$pw',email = '$email');
if( mysql_errno()){ echo mysql_ Solution)
いくつかの質問:
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 は文字列なので解析されませんby php $_POST 配列に入れます
このようになります
sendData = {pw : document.getElementByName(‘pw').value, email : document.getElementByName('emal'][0].value }
ログイン後にコピー
フロントエンドの Ajax は送信時に post メソッドを使用し、バックエンドの PHP は if( $_GET['action']=="1") { ....} を確認する必要があるため、問題が発生します。
修正後
<script> <br> 関数 submit(i) <br> { <br> var sendData=""; <br> if(i=="1"){sendData={pw:getElementByName("pw").value,email:getElementByName("email").value};} <br> $.ajax({ <br> タイムアウト:5000, <br> type:"POST", <br> url:"edit_server.php?action="+i, <br> data:sendData, <br> success:function(data) <br> { <br>アラート(データ); <br> getData(1) } ); <br> } <br> </script>
後台:
if($_POST['action']=="1")
{
$pw = $_POST['pw'];
$email = $_POST['email'];
mysql_query("UPDATE 基本情報 SET pw = '$pw',email = '$email');
if(mysql_errno()){
echo mysql_error();
}else{ getData(1)
}
}
但依然但依然、控制台提示控制台参照エラー:getelementbynameは定義されていません。
非常に感心しています、問題の解決に成功しました。
if(i=="1"){sendData={pw: document.getElementByName("pw").value,email: document.getElementByName("email")。値};}