Эта форма изначально использовала reCAPTCHA v1, но я удалил соответствующий код. Я собираю информацию о регистрации пользователя для публикации в базе данных MySQL, но кнопка отправки только обновляет страницу и не приводит к сообщению о том, что есть электронное письмо с подтверждением. Файлы доступны и функциональны, но сама форма и отправка не работают.
Я попытался включить reCAPTCHA v2 в качестве замены и сделал это успешно, но форма по-прежнему не отправляется. С тех пор я удалил его. Кроме того, я удалил поля, чтобы увидеть, является ли проблема флажком для «Условий и положений», потому что он не выдает ошибку, в отличие от других полей, если он не отмечен, но это также не сработало. Я просмотрел предыдущие вопросы о проблемах с отправкой формы PHP, и все, что я нашел, это то, что тип кнопки был неправильным, как не отправлять, но это правильный тип. База данных подтверждена подключенной, которая вызывается для «config.php».
PHP-код формы:
$data['PageName']='SIGN UP FOR YOUR FREE ACCOUNT TODAY';
$data['PageFile']='signup';
$data['PageTitle'] = 'Sign Up - GPW';
include('../config.php');
require_once('recaptchalib.php');
// Get a key from https://www.google.com/recaptcha/admin/create
$publickey = "6Ld3c-YSAAAAAIIdQocSje_bq1a7Sti3QymRM5hw";
$privatekey = "6Ld3c-YSAAAAAJqrQBNAR_Qb40Mh4BveQ_q8bjv0";
# the response from reCAPTCHA
$resp = null;
# the error code from reCAPTCHA, if any
$error = null;
if($_SESSION['login']){
header("Location:{$data['Host']}/members/index.php");
echo('Logged In');
exit;
}
if($post['action']=='go')optimize('common');
if($post['send']){
if(!$post['newuser']){
$data['Error']='Your username can not be empty.';
}elseif(verify_username($post['newuser'])){
$data['Error']='For your username you can use only next letters [A..Z, a..z, 0..9].';
}elseif(!$post['newpass']){
$data['Error']='Your password can not be empty.';
}elseif(strlen($post['newpass'])<$data['PassLen']){
$data['Error']="Your password must be at least {$data['PassLen']} characters long.";
}elseif($post['newpass']!=$post['cfmpass']){
$data['Error']='Your password and confirm should be not different.';
}elseif($post['newuser']==$post['newpass']){
$data['Error']='Your password can not be same as your username.';
}elseif(!$post['newques']){
$data['Error']='Please enter a valid security question.';
}elseif(!$post['newansw']){
$data['Error']='Please enter a valid security answer.';
}elseif(!$post['newmail']||verify_email($post['newmail'])){
$data['Error']='Please enter your valid e-mail address.';
}elseif($data['UseExtRegForm']&&!$post['newfname']){
$data['Error']='Please enter your first name.';
}elseif($data['UseExtRegForm']&&!$post['newlname']){
$data['Error']='Please enter your last name.';
}elseif($data['UseExtRegForm']&&!$post['newaddress']){
$data['Error']='Please enter your address.';
}elseif($data['UseExtRegForm']&&!$post['newcity']){
$data['Error']='Please enter your city.';
}elseif($data['UseExtRegForm']&&!$post['newcountry']){
$data['Error']='Please enter your country.';
}elseif($data['UseExtRegForm']&&!$post['newzip']){
$data['Error']='Please enter your postal code.';
}elseif($data['UseExtRegForm']&&!$post['newphone']){
$data['Error']='Please enter your telephone number.';
}elseif($post['terms']!='on'){
$data['Error']='Please read our Terms and Conditions before signup.';
}elseif(!is_user_available($post['newuser'])){
$data['Error']='Sorry but this username already taken.';
}elseif(!is_mail_available($post['newmail'])){
$data['Error']='Sorry but this e-mail address already taken.';
}else{
if (isset($_POST["recaptcha_response_field"])) {
$resp = recaptcha_check_answer($privatekey,$_SERVER["REMOTE_ADDR"],$_POST["recaptcha_challenge_field"],$_POST["recaptcha_response_field"]);
//print_r($_SERVER["REMOTE_ADDR"]);
if ($resp->is_valid) {
create_confirmation(
$post['newuser'],
$post['newpass'],
$post['newques'],
$post['newansw'],
$post['newmail'],
$post['newfname'],
$post['newlname'],
$post['newcompany'],
$post['newregnum'],
$post['newdrvnum'],
$post['newaddress'],
$post['newcity'],
$post['newcountry'],
$post['newstate'],
$post['newzip'],
$post['newphone'],
$post['newfax'],
get_member_id($_SESSION['sponsor'])
);
unset($_SESSION['turing']);
$data['PostSent']=true;
}
} else {
$error = $resp->error;
}
}
}else{
if($data['UseTuringNumber'])$_SESSION['turing']=gencode();
}
display('members');
?>