TypechoJoeTheme

至尊技术网

统计
登录
用户名
密码
/
注册
用户名
邮箱

PHP通过表单或URL传递值的示例代码

2025-06-11
/
0 评论
/
5 阅读
/
正在检测是否收录...
06/11

form.html文件中创建一个简单的表单,让用户可以输入文章的标题、关键词、描述和正文。

html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>文章生成器</title> </head> <body> <h1>文章生成器</h1> <form action="generate_article.php" method="post"> <label for="title">标题:</label> <input type="text" id="title" name="title" required> <label for="keywords">关键词:</label> <input type="text" id="keywords" name="keywords" required> <label for="description">描述:</label> <textarea id="description" name="description" required></textarea> <label for="content">正文:</label> <textarea id="content" name="content" required></textarea> <button type="submit">生成文章</button> </form> </body> </html>

php <?php if ($_SERVER["REQUEST_METHOD"] == "POST") { // 获取表单数据 $title = htmlspecialchars($_POST['title']); $keywords = htmlspecialchars($_POST['keywords']); $description = htmlspecialchars($_POST['description']); $content = htmlspecialchars($_POST['content']); // 假设正文长度足够长(1000字左右)或按需截取或自动生成内容(这里简化处理) $wordCount = strlen($content); // 计算字数(非实际用途) $finalContent = ""; // 初始化最终Markdown内容字符串 $lineBreaks = "\n\n"; // 用于分隔段落的两行空白(Markdown格式) $paragraphs = explode($lineBreaks, $content); // 将内容按段落分割为数组(考虑到Markdown的换行规则) $finalContent .= "# $title" . $lineBreaks; // 添加标题部分(Markdown) $finalContent .= "## 关键词: $keywords" . $lineBreaks; // 添加关键词部分(非标准Markdown,但为演示使用) $finalContent .= "### 描述: $description" . $lineBreaks; // 添加描述部分(非标准Markdown,但为演示使用) foreach ($paragraphs as $paragraph) { // 遍历每个段落并添加到最终内容中 $finalContent .= "$paragraph" . $lineBreaks; // 添加每个段落(Markdown) } // 输出或保存生成的Markdown内容到文件或数据库等(这里以输出到浏览器为例) echo $finalContent; // 输出Markdown格式的文章内容到浏览器 } else { // 如果不是POST请求,则显示表单页面(增加安全性) echo "<a href='form.html'>返回填写表单</a>"; // 提供回退链接以防表单未提交而直接访问处理页面的情况发生。 } ?>
此代码段首先检查是否为POST请求,若是,则从表单中获取数据并进行HTML实体编码以防止XSS攻击。然后,它构建一个基于用户输入的Markdown格式的字符串,并将这个字符串输出到浏览器中。请确保在实际应用中处理任何潜在的安全问题,例如XSS攻击和用户输入数据的验证与清理。

朗读
赞(0)
版权属于:

至尊技术网

本文链接:

https://www.zzwws.cn/archives/29430/(转载时请注明本文出处及文章链接)

评论 (0)