精易论坛

标题: 【原创】无需搭建,0基础给你的程序加个云端留言板! [打印本页]

作者: 憨憨问号    时间: 2024-11-10 17:49
标题: 【原创】无需搭建,0基础给你的程序加个云端留言板!
【原创】网络剪辑版操作2024.11.10最新,含上传和读取
https://bbs.125.la/forum.php?mod=viewthread&tid=14839804
(出处: 精易论坛)


上个帖子开源了我制作的网络剪辑版读写例程
本贴就基于此制作一个简单的留言板功能
特点:无需登录,无需验证码,无需实名,无需搭建服务器,无需内网穿透等等,0基础小白直接把代码复制走就能用!源码编译可用,无需依托任何其他文件
注:大牛请绕道,我也只是个萌新,后面会先讲原理,源码在帖子结尾,没耐心看的可以直接拉到结尾取走源码!


以往论坛上也有一些类似的源码,究其基本原理都是借助一些留言平台,通过post进行留言,读取,实现的留言板操作
例如:
【苏汉UI】无需服务器的留言板,给你的软件加上留言反馈吧
https://bbs.125.la/forum.php?mod=viewthread&tid=14837974
(出处: 精易论坛)


永硕E盘应用模块  实现软件运行次数,在线人数 在线留言(1.1版更新)
https://bbs.125.la/forum.php?mod=viewthread&tid=72129
(出处: 精易论坛)

诸如以上

而本源码使用的平台是网络剪贴板https://netcut.cn
这是一个能够上传文本,且完全无需注册登录,支持密码保护,地址完全自定义的开源网站
例如:https://netcut.cn/我爱精易论坛


而最关键的是,这个网站基本没有任何验证,post起来相当的方便快捷,速度块,开发难度小(没做验证不代表不安全,是可以设置密码的)
有了一个方便上传文本的云端平台,我们就可以非常方便的制作留言板了


1.发送留言

发送留言

发送留言

首先要实现发送留言,因为剪贴板只是一个储存文本的平台,并非像上面举得两个例子一样有现成的留言入口
所以我选择手搓一个

我采用了这样一个格式:
  
留言ID = 文本_取随机字母 (50, 2)  ' 生成一个由50个大小写字母组成的随机ID,确保特殊性,方便后续操作!
剪辑版_上传文本 (全_用作留言板的剪辑版名, #换行符“【——————” + 留言ID + “——————”#换行符“留言者:h*h*w*h” + 编辑框_留言姓名.内容 + “h*h*w*h”#换行符“留言内容:h*h*w*h” + 编辑框_留言内容.内容 + “h*h*w*h”#换行符“留言时间:h*h*w*h”到文本 (取现行时间 ()) + “h*h*w*h”#换行符“IP:h*h*w*h” + 全_发送者公网IP + “h*h*w*h”#换行符“——————” + 留言ID + “——————】”, 全_剪辑版密码, 2)


留言板界面里是这样的

[JavaScript] 纯文本查看 复制代码

【——————pgEtOtxoOYneyhbkAKpbzTaizHQEMzbrmzPOgaepTzWjgjijXa——————
留言者:h*h*w*h憨憨叹号h*h*w*h
留言内容:h*h*w*h第114514条留言!h*h*w*h
留言时间:h*h*w*h2020年11月10日17时8分18秒h*h*w*h
IP:h*h*w*h11.451.4.191h*h*w*h
——————pgEtOtxoOYneyhbkAKpbzTaizHQEMzbrmzPOgaepTzWjgjijXa——————】


h*h*w*h是关键字,为了方便后续的文本分割和取出
后续取留言时只需要进行文本处理,取出所有数据存进数组里,再循环插入列表框即可

  
原文本 = 剪辑版_读取文本 (全_用作留言板的剪辑版名, 全_剪辑版密码, , )  ' 取出全部留言
如果真 (删首尾空 (原文本)“”)
返回 ()
文本_取中间_批量_正则方式 (原文本, “【”, “】”, 全_留言初始数组, , , , , 真, )  ' 进行文本处理
文本_取中间_批量_正则方式 (原文本, “留言者:h*h*w*h”, “h*h*w*h”, 全_留言姓名数组, , , , , 假, )  ' 进行文本处理
文本_取中间_批量_正则方式 (原文本, “留言内容:h*h*w*h”, “h*h*w*h”, 全_留言内容数组, , , , , 假, )  ' 进行文本处理
文本_取中间_批量_正则方式 (原文本, “留言时间:h*h*w*h”, “h*h*w*h”, 全_留言时间数组, , , , , 假, )  ' 进行文本处理
文本_取中间_批量_正则方式 (原文本, “IP:h*h*w*h”, “h*h*w*h”, 全_留言IP数组, , , , , 假, )  ' 进行文本处理
文本_取中间_批量_正则方式 (原文本, “【——————”, “——————”, 全_留言ID数组, , , , , 假, )  ' 进行文本处理
计次循环首 (取数组成员数 (全_留言初始数组), i)
索引 = 超级列表框.插入表项 (-1, 全_留言姓名数组 [i], , , , )  ' 插入[/i]
[i]    超级列表框.置标题 (索引, 1, 全_留言时间数组 )  ' 插入
计次循环尾 ()

如此这般,上传留言和读取留言就做好了
2.删除留言

删除留言

删除留言

制作删除留言,由于我们是自己手搓的格式,通过文本处理转换成留言条目
那么难点就在于如何才能在剪辑版中n行数据中,精确地删除掉某个留言涵盖的某几行

我的思路如下:
由于刚才步骤1已经通过命令取出了“全_留言ID数组”,里面应该涵盖了若干个留言ID

步骤1中还进行了列表框插入操作,所以我们可以得知:
全_留言ID数组 [超级列表框.现行选中项 + 1] 应该是和 超级列表框.现行选中项 相对应的
也就是说当我们选中超级列表框第一行的时候,这一行对应的ID就应该是 全_留言ID数组 [超级列表框.现行选中项 + 1]

取出了留言ID之后,一切都变得简单起来
由于前文提到,留言ID是50个随机大小写字母组成的,能够确保其唯一性
只要知道了ID,就能准确知道到底是哪一条留言
  
原文本 = 剪辑版_读取文本 (全_用作留言板的剪辑版名, 全_剪辑版密码, , )  ' 取出全部留言
文本_取中间_批量_正则方式 (原文本, “【——————” + 留言ID + “——————”, “——————” + 留言ID + “——————】”, 临时数组, , , , , 真, )  ' 根据ID取出内容
剪辑版_上传文本 (全_用作留言板的剪辑版名, 子文本替换 (原文本, 临时数组 [1], “”, , , ), 全_剪辑版密码, 1)  ' 把取出的内容替换为空后上传回去实现删除


我们将取出的内容存在临时数组中,同时再将取出的留言作为欲被替换的子文本,原文本作为欲被替换的文本,用作替换的子文本设置为空
如此一来我们便将原文本中,我们指定留言ID的那条留言(也就是要删除的留言),替换成了空文本
最后再将文本覆盖上传回去,就实现了留言的删除

3.修改留言

修改留言

修改留言

修改留言的原理和步骤2删除留言的原理完全一样
区别在于最后替换时
删除留言是将指定ID的留言替换成了空内容
而修改留言则是将指定ID的留言内容替换为了新的内容,如此实现了留言的修改
  
原文本 = 剪辑版_读取文本 (全_用作留言板的剪辑版名, 全_剪辑版密码, , ) ' 取出全部留言
文本_取中间_批量_正则方式 (原文本, “【——————” + 全_留言ID数组 [超级列表框.现行选中项 + 1]“——————”, “——————” + 全_留言ID数组 [超级列表框.现行选中项 + 1]“——————】”, 临时数组1, , , , , 真, ) ' 根据id取出留言内容
' 文本_取中间_批量_正则方式 (临时数组1 [1], “留言内容:h*h*w*h”, “h*h*w*h”, 临时数组2, , , , , 假, )
修改后文本 = “【——————” + 全_留言ID数组 [超级列表框.现行选中项 + 1]“——————”#换行符“留言者:h*h*w*h” + 全_留言姓名数组 [超级列表框.现行选中项 + 1]“h*h*w*h”#换行符“留言内容:h*h*w*h” + 编辑框_留言内容_管理端.内容 + “h*h*w*h”#换行符“留言时间:h*h*w*h” + 全_留言时间数组 [超级列表框.现行选中项 + 1]“h*h*w*h”#换行符“——————” + 全_留言ID数组 [超级列表框.现行选中项 + 1]“——————】” ' 处理修改后文本
原文本 = 子文本替换 (原文本, 临时数组1 [1], 修改后文本, , , ) ' 替换掉原文本
剪辑版_上传文本 (全_用作留言板的剪辑版名, 原文本, 全_剪辑版密码, 1) ' 上传新内容,覆盖老内容,实现修改



i支持库列表   支持库注释   
iext扩展界面支持库一


4.清空留言板

清除全部

清除全部

清空留言板并没有用到什么特殊的机制,我选择使用了我制作的剪贴板模块中的一条命令
剪辑版_删除(剪辑版名,密码)
这条命令会直接注销剪辑版,清空里面的所有内容

5.输入字符限制

字符限制

字符限制

如果留言过长,我们处理文本的时候很可能直接卡死,或者剪贴板被占满
为了防止这种刷屏的情况发生,字符限制就是必不可少的了

我模仿精易论坛发帖时标题部分的逻辑:还可输入 n 个字符
简单的实现了字符限制以及显示,让其在超过指定字符数时变红,未超过时则是不显眼的灰色
  
子程序名返回值类型公开备 注
_编辑框_留言内容_内容被改变  
透明标签_字符数提醒.标题 = “还可输入 ”到文本 (400 - 取文本长度 (编辑框_留言内容.内容)) + “ 字符”
如果 (400 - 取文本长度 (编辑框_留言内容.内容) < 0)
透明标签_字符数提醒.文本颜色 = #红色
透明标签_字符数提醒.文本颜色 = #灰色


i支持库列表   支持库注释   
iext扩展界面支持库一




基础的原理就是如此,具体请在源码中自行查看!
我几乎给每一行代码都写了注释,帮助新手更好的理解代码含义
网络剪贴板源码.png
希望大家多多点赞,回复,评分,这是楼主码字最大的动力

源码回复可见
PS:由于源码内调用的模块是我自己制作,且已经开源,所以本帖是否带模块一栏我选择了否!



网络剪贴板界面

网络剪贴板界面

作者: 苏汉UI设计    时间: 2024-11-10 18:29
哈,先顶个贴
作者: renhe2018    时间: 2024-11-10 18:51
设计得很不错啊。
作者: xiaojiancccc    时间: 2024-11-10 19:19
        感谢分享,很给力!~
作者: cdqpx    时间: 2024-11-10 19:45
感谢分享
作者: bianyuan456    时间: 2024-11-10 20:09
已经顶贴,感谢您对论坛的支持!
作者: 冬夏    时间: 2024-11-10 20:12
真的稳吗
作者: 亿万    时间: 2024-11-10 20:27
谢谢分享
作者: 冷寒冰    时间: 2024-11-10 20:28
思路不错,赞
作者: 是可可吖    时间: 2024-11-10 20:36
如果稳定的话那还不错,可以拿来做个客户反馈
作者: qqmqqg    时间: 2024-11-10 21:04
66666666666666666
作者: gdxinda    时间: 2024-11-10 21:12
谢谢分享
作者: 站在月光下想你    时间: 2024-11-10 21:27
谢谢分享!
作者: jysoft2022    时间: 2024-11-10 21:28
谢谢分享
作者: 易上手    时间: 2024-11-10 22:11

谢谢分享
作者: 曦月    时间: 2024-11-10 22:27
论坛有你更精彩
作者: 芬达gggg    时间: 2024-11-10 22:43
您好你好你好你好
作者: 芬达gggg    时间: 2024-11-10 22:45
感谢分享{:3_57:}{:3_57:}
作者: sadamu999    时间: 2024-11-10 23:03
论坛有你更精彩
作者: chenliben    时间: 2024-11-10 23:04
感谢分享  
作者: jiang910615    时间: 2024-11-10 23:24
学习学习
作者: pipicool    时间: 2024-11-10 23:36
学习一下
作者: nihao6681    时间: 2024-11-10 23:44
感谢楼主分享
作者: j21zj7    时间: 2024-11-11 01:22
嘻嘻嘻嘻嘻嘻
作者: 真IKUN    时间: 2024-11-11 04:04
回复本帖可获得 1 枚 精币奖励! 每人限 1 次
作者: 查过    时间: 2024-11-11 06:15
感谢楼主分享!
作者: 豆豆灰常开心    时间: 2024-11-11 06:20
感谢您对论坛的支持!
作者: qwe111qwe    时间: 2024-11-11 07:26
感谢分享!!!!
作者: 佛学e语言    时间: 2024-11-11 07:32
谢谢大佬, 收藏备用
作者: ctry78985    时间: 2024-11-11 07:53
感谢分享
作者: ctry78985    时间: 2024-11-11 07:54
感谢分享
作者: 星空Allstar    时间: 2024-11-11 08:31
谢谢楼主分享
作者: please    时间: 2024-11-11 09:36
感谢分享,支持开源!!!
作者: 一指温柔    时间: 2024-11-11 09:43
感谢分享,支持开源!!!
作者: wjswzj0    时间: 2024-11-11 09:47
谢谢楼主分享
作者: dj1990    时间: 2024-11-11 12:56

感谢分享,支持开源
作者: 本森Bin    时间: 2024-11-11 13:23
感谢分享,支持开源
作者: orjg    时间: 2024-11-11 14:47
感谢分享,收藏备用
作者: year1970    时间: 2024-11-11 18:27
感谢分享
作者: xiaojiancccc    时间: 2024-11-11 20:35
支持开源~!感谢分享
作者: xjp775121    时间: 2024-11-11 21:29
#在这里快速回复# 感谢分享
作者: 查过    时间: 2024-11-12 06:10
全都是大佬~
作者: 豆豆灰常开心    时间: 2024-11-12 06:14
全都是大佬~
作者: webmaster999    时间: 2024-11-12 08:08
支持开源~!感谢分享
作者: mmlai8    时间: 2024-11-12 08:30
感谢分享,支持开源
作者: please    时间: 2024-11-12 09:37
感谢分享,支持开源!!!
作者: 小虎来了    时间: 2024-11-12 09:47
        感谢分享,很给力!~
作者: ShenMir    时间: 2024-11-12 11:30
有奖励???我来了~~~~
作者: gdhong    时间: 2024-11-12 12:47
6666666666666666
作者: 5864    时间: 2024-11-12 14:27
有奖励?我来了~~~~
作者: 飞翔蓝天    时间: 2024-11-12 17:58
感谢分享,好东西,学习一下
作者: rectdbszy    时间: 2024-11-12 20:56
66666666666666666666
作者: mood100    时间: 2024-11-12 21:19
这个可以,感谢分享
作者: Visitor雅轩    时间: 2024-11-12 21:46
这个挺不错的 真话
作者: 迷糊的弟弟    时间: 2024-11-12 23:07
只要能留字,用处就非常的多
作者: ipkaion    时间: 2024-11-13 01:10
想學習一下謝謝1了
作者: weihua2018    时间: 2024-11-13 03:25
什麼都不要 那留言哪裡看了
作者: mmlai8    时间: 2024-11-13 03:35
支持支持支持
作者: please    时间: 2024-11-13 09:39
感谢分享,支持开源!!!
作者: leige0921    时间: 2024-11-13 15:35
6666666666666666
作者: imoling    时间: 2024-11-13 16:17
积分拿来吧
作者: 原始世界    时间: 2024-11-13 17:16
谢谢分享
作者: ys2yy    时间: 2024-11-13 17:27

作者: wumvya    时间: 2024-11-13 22:55
看看学习

作者: 梦过无痕    时间: 2024-11-14 00:41
源码呢?怎么下载
作者: 阿凡地方23    时间: 2024-11-14 09:38
  感谢分享
作者: 光影魔术    时间: 2024-11-14 13:01
感谢分享源码
作者: 胖子葛格    时间: 2024-11-14 14:26
感谢大神分享~
作者: shaoxing0117    时间: 2024-11-14 16:48
        支持开源~!感谢分享
作者: ljx111    时间: 2024-11-14 19:35
感谢分享~
作者: ajia0011    时间: 2024-11-14 22:07
感谢大佬,这正是我所需要的
作者: 华庭大哥    时间: 2024-11-15 00:12
都放在一个剪切板里  有长度限制的吧
作者: q13956344231    时间: 2024-11-15 00:59
都放在一个剪切板里  有长度限制的吧
作者: 憨憨问号    时间: 2024-11-15 14:54
q13956344231 发表于 2024-11-15 00:59
都放在一个剪切板里  有长度限制的吧

好像是十万还是二十万
就是因为有限制所以我做了每条留言只能输入400个字符,想要达到限制还是挺难得吧
而且我有做管理端,看过的留言可以删除!
作者: 憨憨问号    时间: 2024-11-15 14:54
kirbysxh 发表于 2024-11-15 00:12
都放在一个剪切板里  有长度限制的吧

好像是十万还是二十万
就是因为有限制所以我做了每条留言只能输入400个字符,想要达到限制还是挺难得吧
而且我有做管理端,看过的留言可以删除!
作者: 憨憨问号    时间: 2024-11-15 14:55
梦过无痕 发表于 2024-11-14 00:41
源码呢?怎么下载

可以翻页的,源码在第二页
作者: fenxiangzhe    时间: 2024-11-15 17:47
66666666666666666666666666
作者: j1angtaojy    时间: 2024-11-15 20:36
这种敢于求知,追根探底的精神是最棒的!
作者: Efly    时间: 2024-11-15 23:05
看看源码是如何的
作者: A13ZZ    时间: 2024-11-16 11:51

作者: 不二猫猫    时间: 2024-11-16 12:16
学习一下
作者: 你好啊哈哈    时间: 2024-11-16 13:51
开源精神必须支持~
作者: mood1000    时间: 2024-11-16 14:05
功能越来越多了
作者: 8503    时间: 2024-11-16 21:03
这个可以用来做网络验证吗?
作者: 憨憨问号    时间: 2024-11-17 00:46
8503 发表于 2024-11-16 21:03
这个可以用来做网络验证吗?

当然是可以的,我记得我以前发过
作者: 515667395    时间: 2024-11-17 17:39
感谢分享,很给力!
作者: hhf4977    时间: 2024-11-18 00:56
感谢分享,很给力!~
作者: shaoxing0117    时间: 2024-11-18 14:17
感谢分享,很给力!~
作者: xyrobot    时间: 2024-11-18 22:04
感谢分享。很给力
作者: kin294    时间: 2024-11-19 23:15
感谢分享,好东西,学习一下
作者: borea    时间: 2024-11-21 08:18
这个怎么用的?
作者: shaoxing0117    时间: 2024-11-22 19:07
        感谢分享,很给力!~
作者: 胖子葛格    时间: 2024-11-23 17:22
感谢大神分享~!
作者: 冷叶追风    时间: 2024-11-25 01:18
感谢大神分享~!
作者: a132561    时间: 2024-11-25 21:31
基础给你的程序加个云端留言板! [修改]
作者: ferrisy    时间: 2024-11-26 13:58
无需搭建,0基础
作者: ferrisy    时间: 2024-11-26 13:58
无需搭建,0基础
作者: yeshuang00    时间: 2024-11-27 00:19
666666666666666
作者: 唐唐i    时间: 2024-11-29 19:18
源码呢 大佬
作者: 初见你    时间: 2024-11-30 10:30
谢谢分享  我赚一分钱




欢迎光临 精易论坛 (https://bbs.125.la/) Powered by Discuz! X3.4