A few days ago i had to build a simple comment form. First i
thought about MYSQL etc, but this all seems to be too complicated. So i
came up with a simple solution based on jSon and a TXT file.
So that’s how it cooks:
1. Load the text file with the comments and convert it to an array with json_decode
1
2
3
4
5
|
/* get comments from file */
$commentsText
=
file_get_contents
(
'comments.txt'
)
;
/* create array list from comments */
$commentsList
=
json_decode
(
$commentsText
,
true
)
;
|
2. Check if a new comment was posted and save to file when valid.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
/* check if new comment is posted and minimum 3 characters are set */
if
(
!
empty
(
$_POST
[
'comment'
]
)
&&
strlen
(
$sComment
)
>
3
)
{
/* get posted comment and remove all HTML */
$sComment
=
strip_tags
(
$_POST
[
'comment'
]
)
;
/* add comment, client IP and date to array */
$commentsList
[
'comments'
]
[
]
=
array
(
'text'
=>
$sComment
,
'ip'
=>
$_SERVER
[
'REMOTE_ADDR'
]
,
'date'
=>
time
(
)
)
;
/* convert comments to string */
$commentsText
=
json_encode
(
$commentsList
)
;
/* save comment to file */
file_put_contents
(
$commentsFile
,
$commentsText
)
;
}
|
3. Then we can loop the comment list and create HTML for the output
1
2
3
4
5
6
7
8
9
|
/* create html list */
$commentsHTML
=
"<ul>"
;
/* loop all comments */
foreach
(
$commentsList
[
'comments'
]
as
$commentItem
)
{
// add comment to html list
$commentsHTML
.=
"<li>"
.
$commentItem
[
'text'
]
.
"</li>"
;
}
/* close html comments list */
$commentsHTML
.=
"</ul>"
;
|
4. Then we add the HTML form and the list with comments
1
2
3
4
5
6
7
|
<form
id
=
"comments"
method
=
"POST"
><form
id
=
"comments"
method
=
"POST"
>
<h1
>
Comments?</
h2
>
<div
><?=
$errorMessage?></
div
>
<textarea
id
=
"comment"
name
=
"comment"
cols
=
"70"
>
</
textarea
><br
/
>
<input
type
=
"submit"
value
=
"yes"
/
>
<?=
$commentsHTML?>
</
form
>
|
I know simple but i thought to share it, you can
download
the full example including sorting and some more validation stuff, or check out the example page
.
分享到:
相关推荐
PHP开发的json接口文件,PHP读写josn,数据交换实例。
JSON,即JavaScript Object Notation,是一种轻...以上内容即是PHP读写及修改JSON文件的方法,这对于需要在PHP应用中处理JSON数据的开发者来说是非常有用的。希望这些信息能够为大家带来帮助,也感谢大家的支持和关注。
"Android 中通过 JSON 向 MySQL 中读写数据的方法" Android 中通过 JSON 向 MySQL 中读写数据的方法是指在 Android 应用程序中使用 JSON(JavaScript Object Notation)格式将数据上传到 MySQL 数据库中,并从 ...
4. **存储本地数据**:当需要在用户设备上持久化数据但又不希望使用数据库时,JSON文件是一个不错的选择。 在AS3中处理JSON,还需要注意以下几点: - AS3的`JSON`对象在`flash.utils`包下,确保导入此包才能使用...
5. **Composer.json**:如果库遵循现代PHP的依赖管理标准,可能会有一个Composer配置文件,用于通过Composer安装和管理依赖。 使用这样的库,PHP开发者可以实现以下功能: - **读取Excel文件**:库能读取Excel文件...
4. 在 PHP 世界,已经有 PHP-JSON 和 JSON-PHP 出现了,便于 PHP 序列化后的程序直接调用 5. 因为 JSON 格式能够直接为服务器端代码使用,大大简化了服务器端和客户端的代码开发量,但是完成的任务不变,且易于维护 ...
- **响应生成**:PHP生成响应数据,可以是JSON格式,便于JavaScript解析。 3. **聊天室架构**: - **界面设计**:前端页面通常包含输入框让用户输入消息,以及一个显示聊天记录的区域。页面使用Ajax进行动态更新...
综上所述,PHP的文件处理涉及众多方面,包括基本的读写、文件上传、权限控制、流处理、结构化数据操作、文件压缩以及安全措施。通过熟练掌握这些高级应用,开发者可以构建更强大、更健壮的Web应用。
对于大量读写操作,JSON列可能不如传统的表结构和关系来得高效。 通过`laravel-model-json`,开发者可以轻松地在Laravel应用中利用JSON列的优势,无需担心底层的序列化和反序列化工作。这极大地提高了代码的可读性...
在本篇文章中,我们详细探讨了如何使用PHP来记录和读取JSON格式的日志文件。这对于在后端开发过程中,特别是对于那些无法直接在前端看到运行结果的场景,显得尤为重要。文章内容涉及到将日志信息写入文件的过程,...
在Android应用开发中,JSON(JavaScript Object Notation)是一种常用的数据交换格式,它简洁、易于读写,并且被广泛应用于服务器与客户端之间的数据传输。本教程将深入讲解Android客户端和服务器端如何进行JSON解析...
PHP MongoDB驱动则为开发者提供了一种在PHP环境中与MongoDB交互的接口,使得开发人员能够轻松地进行数据读写、查询、更新和删除等操作。 描述中的“phpmongodb mongodbphp驱动 mongodbphp.dll”进一步强调了这是...
- 文件体积庞大,格式复杂,传输时占用较多带宽。 - 在服务器端和客户端解析XML需要大量的代码,这使得代码变得复杂且不易维护。 - 不同浏览器解析XML的方式存在差异,可能导致一致性问题。 - 解析XML会消耗较多...
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它以其简洁明了、易于读写的特点被广泛应用于网络数据传输。在Java中处理JSON时,通常需要引入特定的库来解析和生成JSON对象,这样的库例如有...
- 优化缓存文件格式,如JSON、XML或序列化数据,以提高读取效率。 通过以上内容,我们对PHP生成缓存文件有了全面的理解,它在提高Web应用性能方面发挥着重要作用。正确实施缓存策略,可以为网站带来更好的用户体验...
这里的 `settings` 字段会被自动转换为 PHP 的数组或者 StdClass 对象,方便读写。 ### JSON 路径操作 Laravel 提供了 `->` 操作符来访问和修改 JSON 字段中的嵌套值。例如,如果我们有一个包含用户设置的 JSON ...
在本场景中,Composer被用来引入PhpSpreadsheet库,这是一个用于读写各种不同Excel文件格式的PHP库,支持xlsx、xls、ods等格式,而且特别的是,它支持在Excel中创建和处理带有公式的单元格。 PhpSpreadsheet库提供...
【描述】:“这个是用php做的不用数据库即可做留言系统”表明设计者可能使用了非关系型的数据存储方法,如文本文件、JSON文件或者XML文件,来替代数据库存储留言数据。这种做法可能出于简化系统、减少服务器资源消耗...