簡體   English   中英

使用ajax將JavaScript參數傳遞給PHP

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM