簡體   English   中英

Ajax調用php函數

[英]Ajax call to php function

我正在嘗試使用jQuery和PHP發布到MySQL:

jQuery的:

var data = $("#prueba").text();
$.ajax({
  type: "POST",
  url: "insertar_mysql.php",
  data: {
    values: data
  },
  success: function(msg) {
    if (msg) {
      alert('success'); //testing purposes
    } else {
      alert('fail'); //testing purposes
    }
  }
});

然后在同一文件夾中,我有一個文件insert_mysql.php ,代碼是

$nombre = $_POST['values'];

問題在於AJAX函數不起作用,也不知道為什么。 該代碼永遠不會插入insertar_mysql.php

更新:

我解決了問題,文件目錄錯誤,但實際上我遇到了更多問題,chorme控制台說:

    POST http://uplaber.com/manager/insertar_mysql.php 403 (Forbidden) jquery-latest.js:8706
    send jquery-latest.js:8706
    x.extend.ajax jquery-latest.js:8136
(anonymous function) uplaber-manager:988
x.event.dispatch jquery-latest.js:5095
v.handle

任何建議,為什么被禁止?

用以下函數替換您的ajax函數:在此函數中,我添加了錯誤事件,以確保您的ajax調用中存在任何錯誤。

var data = $("#prueba").text();
$.ajax({
  type: "POST",
  url: "insertar_mysql.php",
  data: {
    values: data
  },
  success: function(msg) {
    if (msg) {
      alert('success'); //testing purposes
    } else {
      alert('fail'); //testing purposes
    }
  },
  error:function(e){
      alert("something wrong"+ e) // this will alert an error
  }
});
var data = $("#prueba").text();
var dataString = "value="+data;
$.ajax({
  type: "POST",
  url: "insertar_mysql.php",
  data: dataString ,
  success: function(msg) {
      alert(msg); //testing purposes
  }
});

的PHP

$nombre = $_POST['value'];
echo $nombre;

如果在類似地址中insertar_mysql.php
[drive]:\\wamp\\www\\insertar_mysql.php ,您可以使用url: "/insertar_mysql.php"其他類似[drive]:\\wamp\\www\\new\\insertar_mysql.php ,您可以使用url: "/new/insertar_mysql.php"
試試這個代碼:

$.ajax({
    url:"insertar_mysql.php",
    data:{values: data},
    dataType:"html",
    cache:false,
    context:document.body,
    type:"POST",
    success: function(result) {
        if (msg) {
            alert('success'); //testing purposes
        } else {
            alert('fail'); //testing purposes
        }
    },Error: function(xhr,ajaxOptions,thrownError) {
        alert(xhr.status);
        alert(thrownError);
    }
}); 

我在chrome控制台中發現了這個

POST http://uplaber.com/index.php/es/insertar_mysql.php 404 (Not Found) jquery-  latest.js:8706
send jquery-latest.js:8706
x.extend.ajax jquery-latest.js:8136
(anonymous function) uplaber-manager:988
x.event.dispatch jquery-latest.js:5095
v.handle jquery-latest.js:4766

所以我認為我的問題是我的insertar_mysql-php文件的目錄不正確,我將嘗試查找確切的目錄。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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