如何从jQuery调用PHP函数

How to call a PHP function from jQuery?

本文关键字:PHP 函数 调用 jQuery      更新时间:2023-09-26

我正试图在表单提交后使用jQuery调用一个特定的php函数,有什么可以实现的吗?

这是我的代码:

HTML

<form id="frmAgregar" method="post">
    <input id="txtcant" class="centrado" type="number" value="1" required>
    <input class="btnSubmit btnResize" type="submit" value="Agregar +">
</form>

jQuery

$("#frmAgregar").submit(function() {
    if ($("#txtcant").val() < 1 || $("#txtcant").val() == "") {
        return false;
    } else {
        var popup = document.getElementById("popupAgregado");
        popup.setAttribute("style", "display: block;");
        popup.setAttribute("class", "popupAgregado");       
        setTimeout(function () {popup.style.display='none'}, 1700);
        //HERE'S WHERE I NEED TO CALL THE PHP FUNCTION
    }   
});

PHP

<?php
    function insertarDato() {
        $cant = $_POST["txtcant"];
        $query_insertarcontacto = mysql_query("INSERT INTO pedidotemp(cant) VALUES('$cant')", $cnbddelicomi) or die(mysql_error());
    }
?>

任何帮助都将不胜感激。

提前谢谢。

对于任何可能需要帮助解决类似问题的人,我将分享我是如何解决这个问题的。。。

HTML

<form id="frm-addcart" method="post">
  <input id="txt-quantity" class="text-center" type="number" value="1" required>
  <input id="btn-submit" class="submitted btn-resize" type="submit" value="Agregar +">
  <input type="hidden" id="checker-login" name="checker-login" value="isValid">
</form>

jQuery

$("#btn-submit").on("click", function (event) {
  // DEFAULT ACTION OF THE EVENT WILL NOT BE TRIGGERED
  event.preventDefault();
  // GET THE VALUES FROM THE FORM
  var clickBtnValue = "btn-addcart";
  var checkerLogin = $("#checker-login").val();
  var quantity = $("#txt-quantity").val();
  // USE AJAX TO CALL THE PHP FUNCTION
  $.ajax({
    type : 'POST',
    url : 'php/functions.php',
    data : {
        "action" : clickBtnValue,
        "checkerLogin" : checkerLogin,
        "quantityAdded" : quantity      
    },
    success : function (data) {
        // data IS THE VALUE THAT THE PHP FUNCTION RETURNS THROUGH echo
        if (data == "valid") {
            window.location.href = "home.html";                     
        } else {                        
            alert("Something went wrong.");             
        }
    },
    error : function() {
        alert("An error has ocurred.");
    }
  });      
});

php

if (isset($_POST["action"]) == true) {
  switch ($_POST["action"]) {
    case "btn-addcart":
      insertData();
      break;
  }
}
function insertData() {
  // GET DATA FROM AJAX PARAMETERS
  $checkLogin = $_POST["checkerLogin"];
  &quantity = $_POST["quantityAdded"];
  // VALIDATE AND EXECUTE REST OF FUNCTION
  // AND IF EVERYTHING GOES OK
  echo "valid";
  exit();
}

就这样!我正在从jQuery调用一个PHP函数。

享受吧!