私には状況があります。
電子メール サーバーの権限を持つ他のサーバーでスクリプトを実行する必要がある AJAX を介して PHP ページを呼び出しています。データベースにデータを入力した後、PHP ページをより具体的にするには、クエリ文字列の特定のパラメーターを使用して電子メール サーバーにアクセスする必要があります。
index.phpページには、AJAX呼び出しを介してデータベースにデータを入力する送信ボタンがあり、ユーザーに電子メールを送信して情報を得る必要があります。しかし、電子メールの場合、電子メールサーバーにアクセスできる他のサーバーでPHPスクリプトを実行する必要があります。
クライアント側
$.ajax({
url:'vpms/server/updating.php',
type:'POST',
data:formvalues,
success: function(data) {
closelightbox('black_overlay','vendorfeedback',ref-1,'CLOSE');
}
});
IN updating.php
enter code here
if($_POST['Type']=='SUBMITRATING')
{
$sql->Query("INSERT INTO vpms_procurement(`prno`,`vn`,`category`,`paymentterms`,`c1`,`delivery`,`c2`,`communication`,`c3`,`dated`,emaildate ) VALUES('$_POST[PRNO]','$_POST[$vendor]','$_POST[$category]','$_POST[$payment]','$_POST[$payment_txt]','$_POST[$delivery]','$_POST[$delivery_txt]','$_POST[$response]','$_POST[$response_txt]',NOW(),'$_POST[$date]')");
}
$enc=Autoloader::encrypt(serialize($array));
// Sending request to other server for email
header("Location: 10.89.6.2/managerConfirmation.php?token=$enc"); // This is not possible through ajax call
//OR
exec("10.89.6.2/managerConfirmation.php?token=$enc")
}
私が考えるかもしれないオプション。
- exec("PHP script?q=value"); の使用
- または、Ajax 呼び出しが成功したら、JSONP を介して別の呼び出しを行い、リモートサーバーにアクセスします。
しかし、クエリ文字列で暗号化されたデータも使用しているため、これらのオプションがどれほど実用的かはわかりません。