国庆节苦战七天,终于把"看云"的站点给扒了, idoc 横空出世!

2019-10-07 22:57:43 +08:00
 rustkeyboard

1、使用 idoc 可实现看云基本的文档创作功能;

2、非常适合团队或者个人内部使用(写书、写笔记、写 api 文档都可以)

3、目前仅支持 markdown 编辑器(markdown 渲染仍有部分问题需要解决)

4、源码已发布在 github,项目地址:https://github.com/coderzheng/idoc

5、使用 php 原生代码编写,不依赖任何框架

6、Enjoy, http://idoc.codespeaking.com

7926 次点击
所在节点    程序员
42 条回复
qile1
2019-10-07 23:16:49 +08:00
如果我想把编辑的这些内容打印成纸质的有啥好办法分页没?如果我打印了一张半纸,我又添加了一些内容,如何在剩下的半张纸上继续从上次打印位置打印文件
rustkeyboard
2019-10-07 23:25:38 +08:00
@qile1,打印了一张半纸的时候,临时再重新编辑文章内容,之后再继续打印?
pinews
2019-10-08 06:17:37 +08:00
@qile1 再把一半那纸塞进去不就行了么
windowsma
2019-10-08 09:08:31 +08:00
不需要输入用户名密码也可以登录,这是怎么实现的(╬▔皿▔)凸
xiaotuzi
2019-10-08 09:18:03 +08:00
我想爬看云的文档…
qile1
2019-10-08 09:35:16 +08:00
@rustkeyboard 只是添加内容,如果是编辑了,估计得重新打印了

比如第一次我书写如下笔记
'''20191020 测试新程序,调研准备开发
'''
我把上面内容打印到一张纸上,可能只打印了一行

隔几天,又添加了一些内容

'''20191025 调研完成,准备编写文档
'''

有没有办法打印到原来那张纸上,不要覆盖原来打印内容,这样就可以把自己的记录打印到一起,每次打印完都是连续的
yuankui
2019-10-08 10:32:06 +08:00
php 果然是最好的语言
rustkeyboard
2019-10-08 10:45:04 +08:00
@windowsma,一个小 bug 哈,已修复。
rustkeyboard
2019-10-08 11:02:53 +08:00
@qile1,你这个问题有点意思。如果能实现这个需求,那么打印程序要完成以下步骤:
1、程序检测到纸张上已经存在有打印的内容(比如一张纸上有 3 行内容,第一行 aaa,第二行 bbb,第三行 ccc),自动获取最后一行的内容(ccc),并记录纸张上 ccc 行所在的位置;
2、程序将 ccc 这一行和即将进行打印的文本内容进行比较,自动定位到文本内容的 ccc 行;
3、程序发出指令给打印机,从文本内容 ccc 行下面的内容开始打印,并且这里最重要的一点是,需要告诉打印机,打印的位置是从纸张的 ccc 行下面一行开始打印。
然后我立刻按下 ctrl + p,查看了一下打印的设置界面,结论是:即使是手动设置里面也没有这么高级的选项。而且,在第二步这里存在一个似乎无法解决的问题:如果文本内容中包含有两个同样的 ccc 行,那要取哪个 ccc 行呢?
lanyeol
2019-10-08 11:11:28 +08:00
支持楼主
mokeyjay
2019-10-08 11:21:46 +08:00
开源精神值得鼓励,不过需要提升的地方还有很多。举例:

- 数据库连接请使用 PDO,而不是 mysqli
- 对于新手而言不依赖框架并不值得骄傲,反而容易导致很多安全隐患
- 前端体验较差,建议学习 ajax
460881773
2019-10-08 11:25:14 +08:00
通过 4 楼有感 ,随便试试了 账号 1 密码 1 登录成功! 于是修改密码 123456 现在获得用户名 1 密码 123456 (╬▔皿▔)凸
taie
2019-10-08 11:30:10 +08:00
@qile1 你这就是票据套打。如果文档支持版本化,单页内追加套打实现起来难度不大,中间页处理就麻烦了。
fhy1994
2019-10-08 11:50:12 +08:00
@460881773 #12 用户名 1 是我注册的
wzhjii0
2019-10-08 11:58:29 +08:00
@rustkeyboard 不能直接把已经打印了的部分折起来嘛...

每次就只打最新的
dafengchui
2019-10-08 12:22:37 +08:00
建议有左侧导航的模版, 参考:

https://github.com/documize/community (最爱)
https://github.com/Requarks/wiki-v1
markgor
2019-10-08 13:25:10 +08:00
赞成 11L +1
提提几个问题:
1、输入内容未进行过滤。
创建主题时候,直接输入 JS 代码就能直接 XSS 注入了。(我输入了个</script>window.location.href="http://www.v2ex.com";</script>,現在訪問跳轉來 V2EX 了。

2、權限控制沒做好。
通過 POSTMAN,直接修改參數提交到 admin/api.php 就可以了。哪怕不是自己創建的。

3、存在 SQL 注入點-
xbx1209
2019-10-08 13:45:04 +08:00
@rustkeyboard #9
为啥不换个思路
程序上记住本次打印内容至 xx 行
后来新增了新内容后,内容变成了 A
当要打印新增内容时
程序生成新的内容 B:第 1 行至 xx 行为空行,然后接下去上次打印后新增编辑内容
打印机这边手动插入上次的纸
然后就打印内容 B 就好了,打印出来的结果就跟内容 A 是一样的
cydian
2019-10-08 13:51:45 +08:00
好东西。坐等更新楼上的安全漏洞。
很想部署,但是楼上说的安全漏洞令人担忧啊
anyc007
2019-10-08 13:53:26 +08:00
赞同楼上,有问题哦 xss 之类

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/606821

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX