当前位置: 首页 > 知识库问答 >
问题:

如果(isset($_files))在PHP中不起作用

金高轩
2023-03-14

我无法从使用$_files的html表单中获取输入类型文件值,isset($_files['name'])要从表单中获取上载的图像值,我在isset条件的第一行中放了一个回显“string”,但它没有显示它

 <form role="form" id="contact_form" class="contact-form" method="post" enctype="multipart/form-data">
                                    <div class="row">
                                        <div class="col-md-12">
                                            <ul class="row">
                                                <li class="col-sm-12">
                                                    <label>
                          <input type="text" class="form-control" name="newpseudo" id="name" placeholder="php">
                        </label>
                                                </li>
                                                <li class="col-sm-12">
                                                    <label>
                          <input type="email" class="form-control" name="newmail" id="email" placeholder="*EMAIL">
                        </label>
                                                </li>
                                                <li class="col-sm-12">
                                                    <label>
                          <input type="password" class="form-control" name="newmdp1" id="company" placeholder="*MOT DE PASSE">
                        </label>
                                                </li>
                                                <li class="col-sm-12">
                                                    <label>
                          <input type="password" class="form-control" name="newmdp2" id="company" placeholder="*CONFIRMER VOTRE MOT DE PASSE">
                        </label>
                                                </li>

                                                       <li class="col-sm-12">
                                                        <label>Ajouter Photo de profil</label>
                                                        <input type="file" name="avatar" >
                                                    </li>

                                            </ul>
                                        </div>
                                        <div class="col-md-12">
                                            <ul class="row">
                                                <li class="col-sm-12 no-margin">
                                                    <button type="submit" value="submit" class="btn" id="btn_submit" onClick="proceed();" name="modifier">Mettre a jour</button>
                                                </li>
                                            </ul>
                                        </div>
                                    </div>
                                </form>

PHP代码,我正在尝试为它获取文件输入值:

  if (isset($_FILES['avatar']) AND !empty($_FILES['avatar']['name'])) {
         echo "string";
         $taillemax = 2097152;
         $extensionsvalides = array('jpg','jpeg','gif','png');
         if ($_FILES['avatar']['size'] <= $taillemax) {
             $extensionsUpload = strtolower(substr(strrchr($_FILES['avatar']['name'],'.'),1));
             if (in_array($extensionsUpload, $extensionsvalides)) {
                     $chemin ="membres/avatars/".$_SESSION['id'].".".$extensionsUpload;
                     $resultat = move_uploaded_file($_FILES['avatar']['tmp_name'], $chemin);
                     if ($resultat) {
                         $updateavatar = $bdd->prepare('UPDATE memebre SET avatar = :avatar WHERE id = :id');
                         $updateavatar->execute(array('avatar'=>$_SESSION['id'].".".$extensionsUpload,'id' => $_SESSION['id']));
                               header("Location: userProfile.php?id=".$_SESSION['id']);

                     }
                     else
                     {
                        $msg = "Erreur de l'importation de votre photo de profil";
                     }
             }
             else
             {
                $msg = "votre photo de profil  doit etre de format jpg , jpeg ou png";
             }
         }

共有1个答案

谷涵容
2023-03-14

为表单添加动作并将数据发送到文件,执行phpcode并保存文件,这意味着您应该更改这一行:

 <form role="form" id="contact_form" class="contact-form" method="post" 
 enctype="multipart/form-data">

致:

 <form role="form" id="contact_form" class="contact-form" method="post" 
 enctype="multipart/form-data" action="example.php">
 类似资料:
  • 我尝试使用post方法生成表单,我想检查字段是否用isset()填充。但即使字段为空,isset也会返回true。 下面是一个简化的代码:(页面名称:test.php,post方法指向自身) 当您提交时,它总是响应“字段集”,即使您没有在“测试”输入中输入任何内容。 谢谢你的回答!

  • 问题内容: 我在一页上有一个表单提交到另一页。在那里,它检查输入邮件是否已填充。如果是这样,则执行某些操作,如果未填满,请执行其他操作。我不明白为什么即使我发送一个空表格,它总是说它已设置。遗漏或错了什么? step2.php: step2_check: 问题答案: 即使没有填写,大多数表单输入总是被设置的,因此您也必须检查是否为空。 由于已经检查了两者,因此您可以使用以下命令:

  • 问题内容: 我在Mysql SELECT语句中使用,以获得没有LIMIT子句的SELECT返回的行数。 在我的WinXP开发站上,它在几周内每次都返回3/0。当我从工作站使用另一个MySQL服务器时,它也返回3/0。在另一台PC上,相同的代码运行良好,并返回正确的数字(例如,如果我在mysql.db表中有17条记录,则返回3/17)。每台XP PC都具有相同的PHP / Mysql版本,过去在我的

  • 我正在尝试使用此链接查看<代码>其他条件,但没有成功。 我的密码是 我的服务电话是newxyz。通用域名格式 如果则调用 如果则调用,而不是 你能告诉我哪里错了吗。

  • 正如所有评论我已经改变了我的代码。现在的事情是,当我运行我下面的PHP代码作为单独的文件它运行像魅力: $conn=new mysqli($主机名,$用户名,$密码,$数据库); 但是当我试图将其包含到html代码中时,它不起作用: $conn=new mysqli($主机名,$用户名,$密码,$数据库);

  • 问题内容: 我有一个php表单(后跟代码),带有一个按其()运行的提交按钮。在JSON事件代码中,我正在测试是否使用提交了表单。我的问题是JSON事件代码似乎无法识别。 这是表单边码部分。 这是JSON的顶部… 任何帮助非常感谢 问题答案: 如果没有任何值( 空数组 )将起作用,但是在您的情况下,如果您提交的值没有任何值,您仍然会得到如下所示的数组,并且它不是空的: 仅在返回时将返回true 但这