Php 如何使用javascript查询数据库?
另一个新手的问题。我有一个php变量,用于查询数据库中的值。它存储在变量$publish中,当用户单击超链接时,其值将发生变化(在数据库中)Php 如何使用javascript查询数据库?,php,javascript,jquery,ajax,Php,Javascript,Jquery,Ajax,另一个新手的问题。我有一个php变量,用于查询数据库中的值。它存储在变量$publish中,当用户单击超链接时,其值将发生变化(在数据库中) if ($publish == '') { Link to publish.html } else { Link to edit.html } 在后台发生的事情是,我正在查询数据库表中存储在$publish变量中的一些数据。如果$publish为空,它将在弹出窗口中添加publish.html的链接。弹出窗口将处理一个表单,并将数据添加到数据库中,
if ($publish == '') {
Link to publish.html
} else {
Link to edit.html
}
在后台发生的事情是,我正在查询数据库表中存储在$publish变量中的一些数据。如果$publish为空,它将在弹出窗口中添加publish.html的链接。弹出窗口将处理一个表单,并将数据添加到数据库中,这意味着$publish不再是空的。我想实现的是,一旦在弹出窗口中处理表单,并且将数据添加到数据库中,链接就应该更改为edit.html。当页面将重新查询数据库时,可能会发生这种情况,但应该在不刷新页面的情况下发生
如何使用javascript、jquery或ajax来实现它??请协助。不能使用javascript、jquery或ajax创建。只有服务器端脚本才能查询数据库。通过ajax请求,您可以获得脚本输出。ajax请求可以通过纯javascript或jquery发送。好吧,我想我理解你的要求,但你必须有一个起点,试着理解这一点:
- 尝试了解什么是客户机变量和服务器变量李>
- javascript不与数据库通信
- 您可以使用javascript将数据检索到特定的“对象变量”
- 使用jquery的ajax方法,您可以将该数据发布到其他页面,该页面将执行 适当行动
function find_published(folder_id) {
var aj_url = "{{server_path}}/ajax/url"
var list;
$.getJSON(aj_url+"?callback=?&",
function(data) {
//here is your data... true false ... do every thing you want
}
);
};
Javascript本身不能用于处理数据库。这是使用php(或您选择的服务器端语言)完成的。Ajax用于使用javascript向php脚本发送请求,javascript将反过来与db通信。而且它不需要刷新页面 因此,可以使用ajax轻松实现您要做的事情。既然您提到了jquery,那么您可以在jquery中检查$.ajax或$.post方法,这使过程更加简单 您需要使用ajax处理表单。ajax请求被发送到一个php脚本,该脚本将在数据库中进行必要的更改,并在响应中发送新的链接(linktoedit.html)。得到响应后,只需用新的锚元素替换当前锚元素 例如
$.post(url, formdataobject , function (resp) {
$("a.youra").text('edit').attr('href', resp);
});
url
-php脚本所在的位置
formdataobject
-将表单数据作为键值对的javascript对象
第三个参数是一个匿名函数,也称为回调函数,因为只有从服务器收到响应时才会调用它。这是因为ajax请求是异步的
在回调函数中,jquery用于将锚元素中的文本更改为edit
,并且href
属性更改为响应中的值
$.post表示我们正在使用post方法。因此,在php中,这些参数可以作为$u POST数组的元素访问。
更新数据库后,您只需回显
新链接,即可在响应中接收到该链接
此外,您还可以使用其他格式获取响应,例如xml、json 让我试试,您想从处理表单处理的弹出窗口更改页面中的链接。尝试为链接提供一个容器:
<div id="publish_link"><a href="#" id="publish">Publish</a></div>
至于表单提交,请使用Ajax将数据提交到服务器进行更新,并获得回复以将链接更改为编辑或其他内容:
$.post("submit.php", { some_field: "some_value"}, function(response) {
if(response.isPublished)
$('#publish_link', window.opener.document).html('<a href="edit.html">Edit</a>');
});
$.post(“submit.php”,{some_字段:“some_值”},函数(响应){
如果(response.isPublished)
$('publish_link',window.opener.document.html('');
});
基本上,您的发布链接包含在ID为
publish\u链接的div
中,因此您可以在数据处理后更改其内容,而无需重新加载页面。在执行表单处理的弹出窗口中,使用jQuery Ajax POST方法提交数据。然后,脚本接受该数据,更新数据库,如果成功,则返回响应。jQuery POST函数接收到该响应,并在那里检查isPublished
是否为真,获取弹出窗口的打开器窗口(您的主窗口)并更新链接到Edit
。只是一个想法,可能不是最好的。你需要使用AJAX来实现这一点,比如.post()
或.get()
或JSON。这个应用程序用于node.js做mysql查询。它只能用php来实现。你能告诉我如何用php来实现吗?当然,如果你将使用jquery作为你的javascript生活工具,试着理解ajax在jquery中的工作原理:代码看起来很有前途,但我很难实现它。谢谢。python可以作为服务器端语言使用并与javascript集成吗?