重定向后,有效值来自另一个页面。在地址栏中,有效值=%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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp</td></tr>
                    <tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp</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)

10-08 11:11