まず、これはここでかなり頻繁に尋ねられる重複した質問であることを知っていますが、これらの回答を熟読しましたが、コードの何が問題なのかまだわかりません。私は PHP にかなり慣れていませんが、これは非常に簡単で初心者でも達成できると 99% 確信しています。
コードは次のとおりです。
$validProgram = 0;
$validProgramCodes = array('ITFZ', 'ITFC', 'ITFP', 'ITFE', 'ITFL', 'ITFS',
'ITFF', 'ITFM', 'ITFT', 'IEME', 'ISMK', 'IPKT');
if ( isset( $_GET[ 'category' ] ) && isset( $_GET[ 'subcategory' ] )
&& $_GET[ 'category' ] != '' && $_GET[ 'subcategory' ] != '' )
{
$selectedSchool = $_GET[ 'category' ];
$selectedProgram = $_GET[ 'subcategory' ];
$selectedSchool = prepString( $selectedSchool );
$selectedProgram = prepString( $selectedProgram );
foreach ( $validProgramCodes as $temp )
{
if ( $temp == $selectedProgram )
{
$validProgram ++;
}
}
if ( $validProgram == 1 )
{
echo "success!";
}
else if ( $validProgram !== 1)
{
echo "failure!";
}
}
}
さて...何らかの理由で、$selectedProgram に何が提供されても、検証チェックは失敗ステートメントをエコーアウトします。これは非常に単純なコードなので、明らかに明白なことだと思いますが、ざっと見てみるにはもう 1 組の目が必要だと思います。:)
助けてくれてありがとう!