我正在使用 PHP/MySQL 开发产品目录的编辑工具(简单 CMS 的类型)。我已经在 Internet 上搜索解决方案,但我什至不知道要搜索什么。所以现在我的希望寄托在你们身上。
我有一个表格,您可以在其中放置各种数据,例如 part.no、描述等。所有这些数据都保存到 MySql 表(项目)中。我还有一个包含预定义规范的表格。
我想做的,但我找不到解决方案,是有一个下拉菜单(或类似的)和一个添加按钮来为每个相关规范添加一行,而不必每次都保存整个表单。我想在选择所有规范后先保存。
那么,我可以为此使用 PHP 还是需要 jQuery/Javascript 或类似工具?我知道这是可能的,在 OpenCart 中看到过 :-)
我希望有人能理解我的问题。很难解释我没有完全掌握的语言。
问候
最佳答案
客户端与服务器端
Javascript:它位于用户的浏览器中。因此,您想要在用户浏览器中移动的任何内容都将使用 JavaScript 完成。这是“客户端”
PHP:该站点位于服务器上,因此从用户浏览器获取输入并返回响应(通常是 HTML,但也可以是 JSON 或 XML,可由 Javascript 读取。)。这是“服务器端”。
库
jQuery:这是一组为 Javascript 编写的函数,使它更容易。因此它在用户的浏览器中运行,使您可以更轻松地编写在屏幕上移动的位。
您会得到类似的库来帮助您编写 PHP(通常称为“框架”),还有许多其他用于 javascript 的库。
从哪里开始
- 按照您希望的样子编写您的 HTML 页面。第一次保持简单。
- 然后编写一些 javascript(可能使用 jQuery)来移动菜单。 Google“jquery menu dropdown”或类似内容,您会找到一个您可以自定义的解决方案。
- 然后编写一些 PHP,为您提供在“1”中编写的 HTML。
- 然后决定单击 HTML 中的链接时会发生什么,并重复该过程(编写 HTML,合并 Javascript 使其移动,编写 PHP 以提供 HTML)
- 然后找出 HTML 的哪些位是通用的或结构化的,应该来自数据库。
如果不为您编写(在这种情况下您将永远学不会),最好一次一点地开始,并随着知识的增长而构建。当您遇到需要解决的特定问题时,在网络上收集大量示例。
评论“[如何]使得选择和添加单个/多个规范(从另一个表)成为可能,而无需在每次添加规范时保存整个表格”:
与 AJAX 一起成长
您要问的是 AJAX - 这是您让 Javascript 与服务器对话,并让 javascript 根据结果在页面上移动位的地方。 jQuery 可能是最简单的(并且可能有最好的 documentation / examples 用于 ajax,以及 moving the DOM )。
基本上:您有一个用 JavaScript 捕获的“事件”,例如
/// Using jQuery to trap a button click
$().ready( function() {
$("#ButtonID").click( function(e) {
e.preventDefault();
alert('Button Clicked');
});
});
然后您在该事件中构建一个 AJAX 调用(另请查看 get 或 post,因为语法更简单,您获得的控制更少)。 AJAX 将向您的 PHP 服务器发送请求,您可以让 PHP 返回 HTML,您可以使用下面链接的 DOM 操作函数(例如,之前的 html 等)替换/插入它,或者,当您变得更高级时,您将发回 JSON,这是一种您可以更轻松地在 JavaScript 中操作的数据结构,以规定需要执行的操作。
如上所述,无需实际为您编写,最好的起点是阅读文档并试一试。 Google“jquery AJAX PHP 表示例”或类似内容,您会在某处找到示例。
关于php - 添加多个规范而不先保存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13593957/