php captcha.org没有';行不通
我在phpcaptcha.org上有一张表格。但是当我提交表单时,我看到一个白色屏幕,验证码脚本不起作用,其他代码起作用。 有人能帮我验证码有什么问题吗 提前谢谢 我的提交代码是:php captcha.org没有';行不通,php,captcha,Php,Captcha,我在phpcaptcha.org上有一张表格。但是当我提交表单时,我看到一个白色屏幕,验证码脚本不起作用,其他代码起作用。 有人能帮我验证码有什么问题吗 提前谢谢 我的提交代码是: <?php session_start(); //captcha include_once $_SERVER['DOCUMENT_ROOT'] . 'securimage/securimage.php'; $securimage = new Securimage(); include 'connect.p
<?php
session_start();
//captcha
include_once $_SERVER['DOCUMENT_ROOT'] . 'securimage/securimage.php';
$securimage = new Securimage();
include 'connect.php';
$sql = "INSERT INTO users (username, password)VALUES (?, ?)";
$stmt = $link->prepare($sql);
$stmt->bind_param("ss", $username, $password);
$username = $_POST['username'];
$password = md5($_POST['password']);
$stmt->execute();
//captcha
if ($securimage->check($_POST['captcha_code']) == false) {
// the code was incorrect
// you should handle the error so that the form processor doesn't continue
// or you can use the following code if there is no validation or you do not know how
echo "The security code entered was incorrect.<br /><br />";
echo "Please go <a href='javascript:history.go(-1)'>back</a> and try again.";
exit;
}
if (! $sql) {
echo "Account not created";
}
echo 'Account created, click <a href="index.php">here</a>';
$stmt->close();
mysqli_close($link);
?>
我认为主要问题隐藏在include\u once$\u服务器['DOCUMENT\u ROOT']中securimage/securimage.php'代码>行。您是否尝试过在securimage/securimage.php
前面再加一个斜杠(/)呢?看起来PHP正在尝试包含指定的文件,由于缺少斜杠而找不到该文件,继续执行其余代码,并且无法创建新的Securimage变量,因为类型未定义。如果将include_once()
更改为require_once()
,则可能会出现错误
另一方面,我强烈建议使用比MD5更强的散列算法,后者在安全性方面非常弱。请考虑使用PHP中的内置<强> <强>函数,使用更强的算法如<强> BooFISH 强>或<强> Sa-512。如果上面有PHP5.5,您可能还会发现另一个名为的内置PHP函数非常有用。希望这对您有所帮助。ini\u set('display\u errors',1);ini设置(“显示启动错误”,1);错误报告(E_全部);错误是:警告:include_once(C:/xampp/htdocssecurimage/securimage.php):打开流失败:第12行的C:\xampp\htdocs\folder\register.php中没有这样的文件或目录警告:include_once():打开包含的“C:/xampp/htdocssecurimage/securimage.php”失败(include_path=';C:\xampp\php\PEAR')在第12行的C:\xampp\htdocs\folder\register.php中,致命错误:在第13行的C:\xampp\htdocs\folder\register.php中找不到类“Securimage”,请读取错误消息,然后读取第5行。您缺少目录分隔符。将第5行更改为include_once$_SERVER['DOCUMENT_ROOT']/securimage/securimage.php'