Избягване на забележка

dakata__92

Super Moderator
Това ми го изписва, когато въведа същия код но вече UNSET-нат :)

Notice: Undefined index: captcha_code in C:\xampp\htdocs\Ready\Register\reguser.php on line 85

PHP:
$valid = (($_SESSION['captcha_code'] == $captcha )&& ($_SESSION['captcha_code'] != '') && (time() - $_SESSION['captcha_time'] < 120));
					unset($_SESSION['captcha_code']);
					$_SESSION['captcha_time'] = 0;
					if($valid)
					{
						$errMsg == 0;
					}
					else
					{
						$errMsg = $errMsg + 1;
						echo "Кода не е валиден или не съвпада !<br />";
					}
 
Това ми е ясно пробвах какво ли не да сложа като проверки, но си я извежда ! Мислех нещо от сорта на :
if(isSet($_SESION['captcha_code']))
{
koda
}
else
{
echo"eror"
}
 
Нпправи го captcha_code да се задава когато е натиснат бутона за изпращане на заявката а също така имаш ли
PHP:
session_start()
 
goshkoy каза:
Нпправи го captcha_code да се задава когато е натиснат бутона за изпращане на заявката а също така имаш ли
PHP:
session_start()
Направено е това не е целия код ! Просто ми се иска ако има директна проверка както IsSet за избягването на забележката, да я поставя за да не излиза ! Не ми се слага @, за да я избегна като изписване .
 
Можеш да използваш: error_reporting(E_ALL ^ E_NOTICE); - това показва всички грешки с изключение на забележките(както в твоя случай). Пример:

Код:
<?php

error_reporting(E_ALL ^ E_NOTICE);

echo $a;
Това няма да изведе грешка за недефинирана променлива.
 
Не е хубаво да се "крият" или "маскират" грешките.Една проста проверка ще оправи всичко, както по-горе ти казаха...

PHP:
if (isset($_SESSION['captcha'])){
...code...
}
else {
echo "error";
}

+ това не е "isSet" а "isset" виж дали правилно си го написал!
 
Дали е isset или isSet си го приема спокойно, просто се наложи да преправя замисъла за да го избегна като забележка :)
 

Back
Горе