搜索
首页后端开发php教程javascript - html5 单页面应用如何合理的安排后台管理数据

一、问题描述:我想做一个比较好看的产品展示页面,在网上找到了一些比较好看的扁平化html风格的模板(比如这种:http://sc.chinaz.com/mobandemo.aspx?down...),里面的内容,可以直接通过修改html源码进行更改,但是我想做一个后台管理的页面,方便不懂html的人进行内容上的替换,我应该要怎样合理且优雅的安排后台管理?

二、想到的思路:
1、为每一个内容块在后台设立表单,将每一个内容区以字段的形式存储到数据库,(但这种方法感觉很笨重,我要写很多个表单项来储存值,然后还要建立好几个数据表进行数据存储);
2、通过在前台实现在线的模板编辑器,通过ajax将内容保存下来存放到数据库(不知道怎么实现,我在wordpress后台看到过这种插件);

因为个人项目经历有限,不知道如何优雅且正确的处理这类业务,希望各位朋友给点良策。

回复内容:

一、问题描述:我想做一个比较好看的产品展示页面,在网上找到了一些比较好看的扁平化html风格的模板(比如这种:http://sc.chinaz.com/mobandemo.aspx?down...),里面的内容,可以直接通过修改html源码进行更改,但是我想做一个后台管理的页面,方便不懂html的人进行内容上的替换,我应该要怎样合理且优雅的安排后台管理?

二、想到的思路:
1、为每一个内容块在后台设立表单,将每一个内容区以字段的形式存储到数据库,(但这种方法感觉很笨重,我要写很多个表单项来储存值,然后还要建立好几个数据表进行数据存储);
2、通过在前台实现在线的模板编辑器,通过ajax将内容保存下来存放到数据库(不知道怎么实现,我在wordpress后台看到过这种插件);

因为个人项目经历有限,不知道如何优雅且正确的处理这类业务,希望各位朋友给点良策。

其实这个和cms是很类似的,只是由于情况很单一,所以处理起来简单不少。

举个例子,比如我有一个用户页面,用于用户报名参加某项活动。模板都是一样的,可能想运营人员改一些内容,可以给别的内容复用,那么就在这个页面中,把所有需要修改的地方空着,然后通过ajax从数据库里取对应的数据,填入对应的位置即可。
相应的,也要做一个管理页面,给运营人员简单修改内容用,一般就是多个表单用于提交内容,当然一般不需要用原生的表单提交,只要把表单中的内容构造出一个标准格式,存入数据库即可。

实际情况大概是这样
用户页面(初始状态)
活动名称:
活动日期:
活动地点:
备注:

然后用js通过ajax获取对应的数据,一般来说取一个对象比较好,这个对象在用户页面、管理页面和数据库中都是一致的。
内容渲染完毕,大概是这样
用户页面(渲染完毕)
活动名称:obj.title
活动日期:obj.date
活动地点:obj.location
备注:obj.note

这个对象的结构大概是这样

<code>obj = {
    title: '活动名称',
    date: '2016-04-15',
    location: '活动地点',
    note: '这里是备注',
    //一些用户看不到,但是用户页面需要用到的数据,也可以通过这种方式传递和修改,例如wechatShare
    wechatShare: {
        title: '微信分享自定义标题',
        img: '微信分享自定义图片url'
    }
}</code>

管理页面大概就是一个input一个button负责一个键值,修改完毕后提交就把obj更新。

那这个貌似没有你想象的那么难,你要知道,程序大多数都是给不懂编程的人用的。淘宝用户上亿,这里可能只有不到百分之一的人懂编程,但是淘宝还是在正藏运行,所以你想的问题是多余的。
你要做的是在后台,也就是服务器端实现RESTapi接口给前端调用就行了。所有程序的本质都是数据的增删改查,最后保存到存储模块(比如数据库,现在存储的东西太多了)。后端的接口包含了数据操作的所有逻辑,所以定义接口之前逻辑是否全面,清晰很重要。至于那种语言实现就无所谓了,Java,c#,PHP等都OK。
后端OK之后前端就简单很多了,因为不需要考虑数据操作的逻辑了。前端需要让美工根据功能(后端的接口)做出对应的界面,然后让前端程序员调用页面加上逻辑,事件等。调用后端接口,将数据操作保存到后端服务器,流程就是这样。
举个例子,用你的话说,一个完全不懂html的用户打开了你的网页,页面需要呈现一个商品列表。用户有点开了其中一个商品,页面要呈现出该商品的详细信息。这个过程基本需要以下几个操作:

  1. 后端定义两个接口,一个是商品列表接口,另一个是商品详细信息接口,用于返回对应信息。

  2. 美工设计两个静态页面,商品列表页面和商品详细信息页面。

  3. 前端程序员首先要去请求RESTapi得到商品列表的数据,然后把数据绑定到列表页面,这样页面就是活的了,可以随着数据变化而变化。

  4. 前端程序员给列表中的每个商品加点击事件,当用户点击对应商品时,请求商品详细信息,并加载详细信息页面,把数据绑定到页面上。这个地方简单说,也可以在加列表的时候把详细信息也加载过来,这样请求详细信息的方式就变了,速度会很快,不详细说了。

这些所有过程,不需要用户懂一点编程知识,但是用起来也会很顺手。

用不到数据库,反正是单页直接把每项内容serialize进文本存储就行。
我就举个简单的例子:(格式不规范,没有样式也没有安全过滤)
假定展示页show.php:

<code><?php $arr=unserialize(file_get_contents('config.txt'));
?>
网站名称:<?php echo $arr['title']; ?>
网站内容:<?php echo $arr['content']; ?></code>

假定设置页setup.php:

<code><form method="post">
网站名称设定:<input name="title">
网站内容设定:<input name="content">
</form>
<?php $arr=array(
'title'=>$_POST['title'],
'content'=>$_POST['content'],
);
file_put_contents('config.txt',serialize($arr));</code>
声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
php怎么把负数转为正整数php怎么把负数转为正整数Apr 19, 2022 pm 08:59 PM

php把负数转为正整数的方法:1、使用abs()函数将负数转为正数,使用intval()函数对正数取整,转为正整数,语法“intval(abs($number))”;2、利用“~”位运算符将负数取反加一,语法“~$number + 1”。

php怎么实现几秒后执行一个函数php怎么实现几秒后执行一个函数Apr 24, 2022 pm 01:12 PM

实现方法:1、使用“sleep(延迟秒数)”语句,可延迟执行函数若干秒;2、使用“time_nanosleep(延迟秒数,延迟纳秒数)”语句,可延迟执行函数若干秒和纳秒;3、使用“time_sleep_until(time()+7)”语句。

php怎么除以100保留两位小数php怎么除以100保留两位小数Apr 22, 2022 pm 06:23 PM

php除以100保留两位小数的方法:1、利用“/”运算符进行除法运算,语法“数值 / 100”;2、使用“number_format(除法结果, 2)”或“sprintf("%.2f",除法结果)”语句进行四舍五入的处理值,并保留两位小数。

php怎么根据年月日判断是一年的第几天php怎么根据年月日判断是一年的第几天Apr 22, 2022 pm 05:02 PM

判断方法:1、使用“strtotime("年-月-日")”语句将给定的年月日转换为时间戳格式;2、用“date("z",时间戳)+1”语句计算指定时间戳是一年的第几天。date()返回的天数是从0开始计算的,因此真实天数需要在此基础上加1。

php字符串有没有下标php字符串有没有下标Apr 24, 2022 am 11:49 AM

php字符串有下标。在PHP中,下标不仅可以应用于数组和对象,还可应用于字符串,利用字符串的下标和中括号“[]”可以访问指定索引位置的字符,并对该字符进行读写,语法“字符串名[下标值]”;字符串的下标值(索引值)只能是整数类型,起始值为0。

php怎么判断有没有小数点php怎么判断有没有小数点Apr 20, 2022 pm 08:12 PM

php判断有没有小数点的方法:1、使用“strpos(数字字符串,'.')”语法,如果返回小数点在字符串中第一次出现的位置,则有小数点;2、使用“strrpos(数字字符串,'.')”语句,如果返回小数点在字符串中最后一次出现的位置,则有。

php怎么替换nbsp空格符php怎么替换nbsp空格符Apr 24, 2022 pm 02:55 PM

方法:1、用“str_replace("&nbsp;","其他字符",$str)”语句,可将nbsp符替换为其他字符;2、用“preg_replace("/(\s|\&nbsp\;||\xc2\xa0)/","其他字符",$str)”语句。

php怎么读取字符串后几个字符php怎么读取字符串后几个字符Apr 22, 2022 pm 08:31 PM

在php中,可以使用substr()函数来读取字符串后几个字符,只需要将该函数的第二个参数设置为负值,第三个参数省略即可;语法为“substr(字符串,-n)”,表示读取从字符串结尾处向前数第n个字符开始,直到字符串结尾的全部字符。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前By尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
1 个月前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
4 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

螳螂BT

螳螂BT

Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)