纯HTML+PHP实现无刷新提交链接并验证签名
纯HTML+PHP实现无刷新提交链接并验证签名
本文介绍一个简单的示例,演示如何使用纯HTML和PHP实现一个表单,用户在输入框中输入链接,点击提交按钮后,会将链接提交到后端PHP进行处理,并验证签名,最后将处理结果显示在前端页面上。整个过程无需使用AJAX技术。
HTML代码
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>提交链接</title>
</head>
<body>
<form method="post" action="submit.php">
<label for="link">请输入链接:</label>
<input type="text" id="link" name="link">
<input type="submit" value="提交">
</form>
</body>
</html>
submit.php代码
<?php
// 获取输入框中的链接
$link = $_POST['link'];
// 提交到后端的数据
$data = ['link' => $link];
// 签名验证
$secret = '123456'; // 用于签名的密钥
$sign = md5(json_encode($data) . $secret); // 计算签名
$sign2 = $_POST['sign']; // 获取提交的签名
if ($sign != $sign2) {
die('签名错误');
}
// 处理数据,这里只是简单的返回输入框中的链接
$response = ['link' => $link];
// 显示在前端页面上
header('Content-Type: text/html; charset=utf-8');
echo '提交成功,您提交的链接是:' . $response['link'];
解释
-
用户在输入框中输入链接,点击提交按钮后,会将链接提交到submit.php页面进行处理。
-
在submit.php页面中,我们首先获取输入框中的链接,并将其组成一个数组$data。
-
然后我们需要对这个数组进行签名验证,以确保提交的数据没有被篡改。这里我们使用了一个密钥$secret来进行签名,签名的过程是先将$data数组转成JSON字符串,再将密钥和JSON字符串拼接起来,然后计算MD5值。提交的时候,我们将签名值一起提交到后端。
-
如果签名验证失败,我们直接输出错误信息并结束程序。
-
如果签名验证通过,我们可以对数据进行处理。这里我们只是简单的返回输入框中的链接,实际应用中可能需要做更多的处理。
-
最后,我们将处理后的数据以HTML文本的形式返回到前端页面上,让用户可以看到提交的结果。注意,这里我们没有使用任何AJAX技术,而是直接将HTML文本输出到浏览器上。
原文地址: https://www.cveoy.top/t/topic/lMPs 著作权归作者所有。请勿转载和采集!