javascript - 更新数据库 OnClick() <a>

标签 javascript php jquery html ajax

我一直在这里寻找很多问题,但似乎没有什么对我有用......它不会更新数据库。

function language(id,lang){
  $.ajax({
      url: 'modules/tca/updatedb.php',
      type: 'POST',
      data: 'id='+id+'&lang='+lang,
   });
}
<li><a href="#en" onclick="return language($id,"en");"><span class="flag flag-usa flag-1x"></span> EN</a></li>
<li><a href="#fr" onclick="return language($id,"fr");"><span class="flag flag-frc flag-1x"></span> FR</a></li>

这是我的updatedb.php。

<?php
@include_once('setdb.php');
$id = $_POST['id'];
$lang = $_POST['lang'];

mysql_query("UPDATE users SET lang='$lang' WHERE id = '$id' ");
?>

最佳答案

这是一个有效的选项。

<script>
    function language($id, $lang){
        //get the input value
        $.ajax({
            //the url to send the data to
            url: "modules/tca/updatedb.php",
            //the data to send to
            data: {id : $id, lang: $lang},
            //type. for eg: GET, POST
            type: "POST",
            //on success
            success: function(data){
                console.log("***********Success***************"); //You can remove here
                console.log(data); //You can remove here
            },
            //on error
            error: function(){
                    console.log("***********Error***************"); //You can remove here
                    console.log(data); //You can remove here
            }
        });
    }
</script>

在正文中:

<li><a href="#en" onclick="language(1,'en')"><span class="flag flag-usa flag-1x" ></span>EN</a></li>
<li><a href="#fr" onclick="language(2,'fr')"><span class="flag flag-frc flag-1x"></span> FR</a></li>

以及您的帖子页面(在本例中为您的modules/tca/updatedb.php)

<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "code";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 
$id = $_POST['id'];
$lang= $_POST['lang'];

$sql = "UPDATE users SET lang='$lang' WHERE id = '$id'";

if ($conn->query($sql) === TRUE) {
    echo "New record updated successfully";
} else {
    echo "Error: " . $sql . "<br>" . $conn->error;
}

$conn->close();
?>

关于javascript - 更新数据库 OnClick() <a>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42286305/

相关文章:

javascript - 在 JavaScript 中比较两个数字,如果它们是 double 以及 == 或 === 的使用呢?

javascript - 更改 Vuetify v-card 图像的高度?

php - 如何知道安装的 mysqli 版本是什么?

Jquery .ajax Get请求总是失败

javascript - 尽管没有出现错误,但 jQuery 无法正常工作

javascript - forEach 中可用的数组原型(prototype)

javascript - 更改表格列宽

PHP警告: Use of undefined constant self - assumed 'self'

php - 简单迁移后 Laravel 测试失败

javascript - Jquery移动标题子标题的背景颜色