PHP 使用输入检查,简单验证码和错误报告进行表单处理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP 使用输入检查,简单验证码和错误报告进行表单处理相关的知识,希望对你有一定的参考价值。

<?php
        $js_back = 'javascript:history.go(-1)';

	if (isset($_POST['send']))
	{
		if ($_POST['captcha'] != 'hello')
			die('<p class="error">Antispam failed. <a href="'.$js_back.'">Try again</p>');
		
		$secured = array();
		$secured = array_map('htmlspecialchars', array_map('strip_tags', $_POST));
		extract($secured);

		$inputs = array('cname' => 'Firstname, surname', 'cemail' => 'Email', 'msg' => 'Message');
		foreach ($inputs as $key => $value)
		{
			if (empty(${$key}))
				die('<p class="error">Input '.$value.' is required. <a href="'.$js_back.'">Try again</a></p>');
		}

		// Code...
	}

?>
<form action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>" method="post">
	<table>
		<tbody>
			<tr>
				<td><label for="cname">Firstname, surname:</label></td>
				<td><input type="text" name="cname" id="cname" size="40" /></td>
			</tr>
			<tr>
				<td><label for="cemail">E-mail:</label></td>
				<td><input type="text" name="cemail" id="cemail" size="40" /></td>
			</tr>
			<tr>
				<td><label for="msg">Message:</label></td>
				<td><textarea name="msg" rows="8" cols="38" id="msg"></textarea></td>
			</tr>
			<tr>
				<td>Antispam:</td>
				<td><input type="text" name="captcha" /> write in "hello"</td>
			</tr>
			<tr>
				<td> </td>
				<td><input type="submit" name="send" value="Send" /></td>
			</tr>
		</tbody>
	</table>
</form>

以上是关于PHP 使用输入检查,简单验证码和错误报告进行表单处理的主要内容,如果未能解决你的问题,请参考以下文章

PHP算式验证码和汉字验证码的实现方法

使用 php 和 ajax 进行登录表单验证

PHP生成各种验证码和Ajax验证

PHP 表单

使用 javascript 到 php 的表单验证

即使在经过验证的输入上,我是不是也需要检查 sql 注入?