0

我需要“自动保存”文本区域的帮助。基本上,每当用户在文本区域中输入时,我都想在我们的数据库中保存一个“草稿”。例如,用户正在输入博客文章。我希望脚本每 15 秒更新一次数据库,其中包含输入到 textarea 中的所有文本输入。

我希望通过 jQuery/Ajax 来实现这一点,但我似乎找不到任何满足我需求的东西。

非常感谢您对此事的任何帮助!

更新:

这是我的PHP代码:

<?php

$q=$_GET["q"];
$answer=$_GET["a"];

//Connect to the database
require_once('mysql_connect.php') ;

$sql="UPDATE english_backup SET q".$q."='".$answer."' WHERE student_id = {$_COOKIE['student']} LIMIT 1";
$result = mysqli_query($dbc, $sql);

?>

这是我的javascript代码:

<script type="text/javascript">
function showUser(str, answer)
{
if (str=="")
  {
  document.getElementById("txtHint").innerHTML="";
  return;
  } 
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","getuser_english.php?q="+str+"&a="+answer,true);
xmlhttp.send();
}
</script>
4

2 回答 2

5
function saveText() {
    var text = $("#myTextArea").val();
    // ajax call to save the text variable

    // call this function again in 15 seconds
    setTimeout(saveText, 15000);
}();
于 2012-04-07T01:33:30.857 回答
1

我想你想要像 ajax 这样的东西......我正在使用 ajax jQuery,所以你需要 jQuery 库才能让它工作。下载它。您可以在网站的文档选项卡上找到教程。

 //in your javascript file or part
$("textarea#myTextArea").bind("keydown", function() {
        myAjaxFunction(this.value) //the same as myAjaxFunction($("textarea#myTextArea").val())
});

function myAjaxFunction(value) {
    $.ajax({
        url: "yoururl.php",
        type: "POST",
        data: "textareaname=" + value,
        success: function(data) {
            if (!data) {
                alert("unable to save file!");
            }
        }
    });
}

 //in your php part
 $text = $_POST["textareaname"]; 
 //$user_id is the id of the person typing
 $sql = "UPDATE draft set text='".$text."' where user_id='".$user_id."'"; //Try another type of query not like this. This is only an example
 mysql_query($sql);
 if (mysql_affected_rows()==1) {
    echo true;
 } else echo false;

嘿大家我仍然有问题请看这里https://stackoverflow.com/questions/10050785/php-parse-html-using-querypath-to-plain-html-characters-like-facebook-twitter

于 2012-04-07T01:47:14.273 回答