2 تا آرایه 1 متغیر جواب (هر کاری کردم نشد) لطفا راهنمایی کنید

X7337X

Member
سلام :cry:

دیگه هنگ کردم بخدا
یکی راهنمایی کنه :-?

من چندتا خطا تو یه آرایه معرفی کردم و چند تا جواب صحیح هم تو یه آرایه دیگه و یک متغیر که جواب داده شده به صورت زیر

PHP:
<?php

$errors = array(
                "Error1" => "Answer1",
                "Error2" => "Answer2",
                "Error3" => "Answer3",
                "Error4" => "Answer4",
                "Error5" => "Answer5");

$accept = array(
                "Okay1" => "Set1",
                "Okay2" => "Set2",
                "Okay3" => "Set3",
                "Okay4" => "Set4",
                "Okay5" => "Set5");

if($_POST)
{
$string = "This Object code is: " . $_POST['test'];
}

?>

حالا میخوام یه طوری شرط برقرار بشه که با متغییر string ست بشه و وقتی یکی از جواب ها پیدا شد و خطایی توش یافت نشد جواب نوشته شده در جلوی آرایه رو نمایش بده

لطفا راهنمایی کنید :shock:
 

X7337X

Member
دوست عزیز من میخوام وقتی توی متغییر عمل post انجام شد با error ها و accept ها ست بشه و در صورت مشاهده value جولوی متغییر رو بنویسه

مثلا اگه به صورت زیر بود
PHP:
<?php

$errors = array(
                "Error1" => "Answer1",
                "Error2" => "Answer2",
                "Error3" => "Answer3",
                "Error4" => "Answer4",
                "Error5" => "Answer5");

$accept = array(
                "Okay1" => "Set1",
                "Okay2" => "Set2",
                "Okay3" => "Set3",
                "Okay4" => "Set4",
                "Okay5" => "Set5");

if($_POST)
{
$string = "This Object code is: Error1 "
}

?>
چون error1 در متغییر هنگام پست قرار گرفت باید value اون رو نشون بده که میشه Answer1

و اگه یکی از okay ها قرار گرفت و error وجود نداشت value اون رو بنویسه

تشکر
 

yakoza

Well-Known Member
PHP:
<?php

$errors = array(
                "Error1" => "Answer1",
                "Error2" => "Answer2",
                "Error3" => "Answer3",
                "Error4" => "Answer4",
                "Error5" => "Answer5");

$accept = array(
                "Okay1" => "Set1",
                "Okay2" => "Set2",
                "Okay3" => "Set3",
                "Okay4" => "Set4",
                "Okay5" => "Set5");
// for example : $_POST['code']='Error1';
if($_POST)
{
	if(array_key_exists($_POST['code'],$errors))
	{
		$string = "erro = ".$errors[$_POST['code']];
	}
		
}

?>

ببين سوالت رو درست متوجه شدم
 

X7337X

Member
حالا یه مشکل دیگه

ببین اگه متغییر code که post میشه به صورت زیر باشه
کد:
Not Found Error1
خطا رو پیدا نمیکنه ولی اگه به صورت زیر باشه جواب میده
کد:
Error1
حالا یه طوری باید ereg یا preg استفاده بشه نه؟

چطور باید استفاده کنم؟

کد کامل رو یه نگاه بنداز

PHP:
<?php

$errors = array(
                "Error1" => "Answer1",
                "Error2" => "Answer2",
                "Error3" => "Answer3",
                "Error4" => "Answer4",
                "Error5" => "Answer5");

$accept = array(
                "Okay1" => "Set1",
                "Okay2" => "Set2",
                "Okay3" => "Set3",
                "Okay4" => "Set4",
                "Okay5" => "Set5");

if($_POST)
{
    if(array_key_exists($_POST['code'],$errors) && !array_key_exists($_POST['code'],$accept))
    {
        echo "erro = ".$errors[$_POST['code']];
    }
    elseif(array_key_exists($_POST['code'],$accept) && !array_key_exists($_POST['code'],$errors))
    {
        echo "acct = ".$accept[$_POST['code']];
    }
    else
    {
        echo "error !";
    }
        
}

?> 
<form action="" method="post">

<input type="input" name="code" />
<input type="submit" value="submit" name="submit">
</form>
 

yakoza

Well-Known Member
سلام

البته اينو همينجوري سريع نوشتم ولي تو حالتهاي مختلف تست كن ببين جواب ميده

PHP:
<?php

$errors = array(
                "Error1" => "Answer1",
                "Error2" => "Answer2",
                "Error3" => "Answer3",
                "Error4" => "Answer4",
                "Error5" => "Answer5");

$accept = array(
                "Okay1" => "Set1",
                "Okay2" => "Set2",
                "Okay3" => "Set3",
                "Okay4" => "Set4",
                "Okay5" => "Set5");
// for example : $_POST['code']='Error1';
$string='Not Found Error1';
if(preg_match("/Error[0-9]/",$string,$b))
{
	foreach($b as $v)
	{
		if(array_key_exists($v,$errors))
		{
			$string = "erro = ".$errors[$v];
			echo $string;
		}	
	}

}


?>
 

X7337X

Member
بازم یه مشکل دیگه

preg_match("/Error[0-9]/",$string,$b شاید به جا Error چیز دیگه ای بود
اونوقت چی؟

مثل این
PHP:
<?php

$errors = array(
                "Error in web" => "Answer1",
                "not found" => "Answer2",
                "not extracted" => "Answer3",
                "Error4" => "Answer4",
                "Error5" => "Answer5");

?>

حالا چی؟
 

جدیدترین ارسال ها

بالا