进行AJAX调用以更新数据库onChange of textarea

时间:2012-07-16 20:37:50

标签: php javascript jquery ajax

我正在尝试在我的网站上创建一个功能,该功能会在下面的textarea更改时自动更新数据库(这将作为“提醒的便利贴”)。我是ajax的新手,我想知道是否有人可以告诉我一个基本的例子,我将如何进行AJAX调用以更新我的数据库onChange of textarea?

<?php
//Create mysql connect variable
$conn = mysql_connect('samplesource.com', 'example', 'pass');

//kill connection if error occurs
if(!$conn){
    die('Error: Unable to connect.' . '<br>' . mysql_error());
}
//connect to mysql database
mysql_select_db("mydb", $conn);

session_start();
$userid = $_SESSION['id'];

$results = ("SELECT * FROM notes WHERE userid='$userid'");
?>

<html>
<head>
<title>practice</title>
<script src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function() {     
    $(".sometext").change(function(){   
        //make ajax call to update database onChange    
    }); 
}); 
</script>
</head>
<body>

<textarea class="note" style="resize:none; width:300px; height:200px;"> </textarea>

</body>
</html>

1 个答案:

答案 0 :(得分:7)

首先,您需要将数据库保存脚本移动到新文件中,例如save.php

<textarea>我添加

<textarea onchange="saveChanges(this);"></textarea>

对于进行更改时调用的javascript保存功能:

function saveChanges(object){   
    $.ajax({
        url: 'save.php',
        data: 'content=' + object.value,
        cache: false,
        error: function(e){
            alert(e);
        },
        success: function(response){
            // A response to say if it's updated or not
            alert(response);
        }
    });   
}

这是一种非常快速和肮脏的方式。