重定向后,有效值来自另一个页面。在地址栏中,有效值=%273%27。
该值回显为'3',但if语句仍评估为false。在数据库表中,我已将有效的变量类型声明为INT。我试图将有效变量的类型也更改为TINYINT,ENUM和VARCHAR,但是没有用。
<?php
$output="";
if($_GET['valid']==3)
{
$output.="<br/><br/><br/>
<h2>You are just one step behind completing your Profile.Please Upload Your Photo Here:</h2>
<br/><br/><br/>";
$output.="<form action=\"loadStudent.php\" method=\"post\" enctype=\"multipart/form-data\">";
$output.="<table>";
$output.="<tr>";
$output.="<td align=\"right\"><font size=\"2\" face=\"Arial\"><strong>Picture</strong></font></td>";
$output.="<td align=\"center\">:</td>";
$output.="<td>";
$output.="<input type=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"10485760\">";
$output.="<input type=\"file\" name=\"image\" id=\"file\" size=\"255\"> <font size=\"5\" face=\"Arial\"> Maxsize 1MB</font>";
$output.="</td>";
$output.="</tr>";
$output.="<tr><td>  </td></tr>
<tr><td>  </td><td colspan=\"2\"><input type=\"submit\" name=\"submit\" value=\"Submit\"></td>";
$output.=" </tr>";
$output.="</table>";
$output.="</form>";
echo $userId;
echo $output;
}//if($valid==3)
echo $_GET['valid'];
?>
最佳答案
如果看到valid =%273%27,则表示您发送的单引号为“ 3”。
您可以检查值“'3'”
if($_GET['valid']=="'3'")
或从输入中删除
$valid = intval(str_replace("'",'',$_GET['valid']));
if ($valid == 3)