[英]Pass JavaScript argument to PHP with ajax
我需要能夠將JavaScript變量發送到PHP函數。 我能夠使它適用於硬編碼的值,例如下面的代碼。
<button onclick="submitform()">Click me</button>
<script>
function submitform(){
document.write(' <?php send_mail('hello'); ?> ');
}
</script>
<?php
function send_mail($subject){
//$subject => 'hello'
//Do something with subject
}
?>
但是,我不能用變量替換硬編碼的值。 我還想找到另一種發出PHP函數調用的方法。 我相信解決方案在於ajax請求。 我現在找不到直接嵌入PHP代碼的方法。 我無法上班的所有其他示例。 如果可能的話,我也希望演示。 謝謝!
您可以使用以下表格進行操作:
<form action="send_mail.php" method="post">
<input type="text" id="mail" name = "mail">
<input type="submit" class="btn" value="Send Mail">
</form>
然后,您可以從send_mail.php頁面使用$ _POST [“ mail”]訪問該郵件
另一種方法是ajax:
$.ajax({ url: '/send_mail.php',
data: {action: 'sendEmail', mymail:$('#mail').val()},
type: 'post',
success: function(output) {
alert(output);
}
});
然后,在send_mail.php頁面中,您可以執行以下操作:
if(isset($_POST['action']) && !empty($_POST['action'])) {
$action = $_POST['action'];
$mail = $_POST['mymail'];
switch($action) {
case 'sendEmail' : send_email();break;
// ...etc...
}
}
相同頁面調用的演示:
<?php
if(isset($_GET['action'])=='myfunc') {
echo "Hello";
}
?>
<form action="?action=myfunc" method="post">
<input type="text" id="mail" name = "mail">
<input id="clickMe" type="submit" value="clickme"/>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.