Pokiaľ zle opíšem captcha alebo ju nenapíšem dobre a dám odoslať tak mi vypíše, chybu a mal by stránku načíta znova.
Napr:
formulár na stránke contact.html - zly kod (načíta znova contact.html)
formulár na stránke career2.html - zly kod (načíta znova career2.html)
formulár na stránke career3.html - zly kod (načíta znova career3.html)
formulár na stránke enquiry.html - zly kod (načíta znova enquiry.html)
Ale problém je, že ak nezadám alebo zle opíšem captcha (napr. na contact.html) tak mi ju znova nenačíta ale načíta enquiry.html (kde mi aj správne vypíše hlášku o chybne zadanom kóde).
Jednotlivé formuláre mám nazvané takto:
Kód: Vybrať všetko
<form id="contact" name="form1" method="post" action="output.php">
<form id="career2" name="form1" method="post" action="output2.php">
<form id="career3" name="form1" method="post" action="output3.php">
<form id="dotaznik" name="form1" method="post" action="output4.php">
Kód: Vybrať všetko
<?php
// DO NOT EDIT
session_start();
error_reporting(E_ALL ^ E_NOTICE);
require_once("config.php");
if(isset($_GET['pfw_security_code']))
{
$code = $_GET['pfw_security_code'];
}
else
{
$code = $_POST['pfw_security_code'];
}
if(!$CaseSenstive)
{
$code = strtolower($code);
}
if(md5($code)==$_SESSION['pfw_text']) $comp = 1;
if($comp!=1)
{
switch($error_display_mode)
{
case 0:
die("<p align='center'><font face='Arial' size='3' color='#FF0000'>$error</font></p>");
break;
case 1:
header("location: $error_page");
break;
case 2:
$translation = implode('',@file($form));
$translation = str_replace("<!-- error alert goes here -->","<p align='center'><font face='Arial' size='3' color='#FF0000'>$error</font></p>",$translation);
header("Cache-control: public");
die($translation);
break;
}
}
if($redirect)
{
header("location: $success_page");
}
?>
Súbor config.php je takýto:
Kód: Vybrať všetko
<?php
//this file includes the settings of form captcha
$error = 'nesprávny bezpečnostný kód' ;
$error_display_mode = 2 ;
$error_page= '' ;
$font = 4 ;
$hight = 40 ;
$width = 120 ;
$text_length = 3 ;
$border = 0 ;
//Make sure you change this to refelct the proper contact form name.
if($id ='contact') $form = 'contact.html';
if($id ='career2') $form = 'career2.html';
if($id ='career3') $form = 'career3.html';
if($id ='dotaznik') $form = 'enquiry.html';
$CaseSenstive = false ;
$user = 'max' ;
$pass = 'dde2790ce930e3d425305c36afd4e69c' ;
$redirect = false ;
$success_page = '' ;
?>
(skúšal som to v config.php cez if ale aj tak mi to nejde a už som z toho jeleň).