将默认值放入 <input type=file....>

2022-01-09 00:00:00 input upload php javascript html
<块引用>

注意:

答案&下面的评论反映了 2009 年旧版浏览器的状态.现在您实际上可以在 2017 年使用 JavaScript 动态/编程地设置文件输入元素的值.

有关详细信息以及演示,请参阅此问题中的答案:
如何以编程方式设置文件输入值(即:拖放文件时)?

我想更新一个表.因此,当用户想要更新它时,插入表单会出现在默认值出现在输入框中的位置.但我无法加载 <input type=file....>.

代码如下:

 <?phpsession_start();if(!isset($_SESSION['user'])){header("位置:index.php");出口();}包括(./include/dbc.php");$a=$_REQUEST['apt'];$qry="select * from flats where app_name = '$a'";$result=mysql_query($qry) 或死(mysql_error());而($res = mysql_fetch_array($result)){$ai=$res[0];$an=$res[1];$bn=$res[2];$lc=$res[3];$st=$res[4];$nf=$res[5];$ct=$res[6];$mp=$res[7];$lm=$res[8];}?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 过渡//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><form id="form1" action="details1.php?ar=<?php echo $a;?>&api=<?php echo $ai;?>"方法="post" enctype="multipart/form-data"><html xmlns="http://www.w3.org/1999/xhtml"><头><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/><title>欢迎来到 Prime Properties</title><link rel="stylesheet" href="style.css" type="text/css"/></头><身体><div 类="容器"><div 类="标题"><div class="banner"><img src="../images/top.jpg" width="995" height="169"/></div><!--菜单开始-->

<?php include('include/menu.php');?></div><!--菜单结束--></div><div 类="主"><!--左侧菜单开始--><div class="left_menu"><?php include('include/lm.php');?></div><!--左侧菜单结束--><div class="divider"></div><!--body contant 在这里--><div 类="对"><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;输入您的凭据......</p><fieldset><p class="first"><label for="a_name" >公寓名称:</label><input type="text" name="a_name" id="a_name" value="<?php echo $an;?>"><br/></input></p><p><label for="b_name">生成器名称:</label><input type="text" name="b_name" id="b_name" value="<?php echo $bn;?>"><br/></input></p><p><label for="loc">位置:</label><选择名称="本地"><?php $qry1="从 loc_id='$lc' 的位置选择位置";$result1=mysql_query($qry1) 或死(mysql_error());而($res = mysql_fetch_array($result1)){$op=$res[0];}?><option value="<?php echo $lc?>"><?php echo $op;?></option><option value="1">Maligaon</option></select><br/></p><p><标签为=状态">状态:</label><选择名称="状态"><?php $qry1="select status from status where st_id='$st'";$result1=mysql_query($qry1) 或死(mysql_error());而($res = mysql_fetch_array($result1)){$sts=$res[0];}?><option value="<?php echo $st?>"><?php echo $sts;?></option><option value="1">进行中</option><option value="2">未来</option><option value="3">完成</option></select><br/></p><p><label for="no_flats">单位数量:</label><input type="text" name="no_flats" id="no_flats" value="<?php echo $nf;?>"><br/></input></p><p><label for="c_time">完成时间:</label><?php $ct1=explode(" ", $ct);?><选择名称="月"><option><?php echo $ct1[0];?></option><option>一月</option><option>二月</option><option>三月</option></选择><选择名称="年份"><option><?php echo $ct1[1];?></option><选项>2012</选项><选项>2013</选项><选项>2014</选项></选择></p><p><label for="m_pic">主图:</label><td><img src="images/<?php echo $mp?>"width="100" height="70"/></td><input type="file" name="photo"><br/></input></p><p><label for="l_map">位置图:</label><td><img src="loc_images/<?php echo $lm?>"width="100" height="70"/></td><input type="file" name="photo"><br/></input></p><p 类="提交"><输入类型=隐藏"名称=检查"值=1"/><button type="submit" name="submit" >更新</button></p></fieldset></div><!--正文内容到此结束--></div></身体></html></表格>

我该怎么办?

解决方案

出于安全原因, 元素的值只能由用户更改.无法通过 JavaScript 或 HTML 更改值.

Note:

The answers & comments below reflect the state of legacy browsers in 2009. Now you can actually set the value of the file input element dynamically/programatically using JavaScript in 2017.

See the answer in this question for details as well as a demo:
How to set file input value programatically (i.e.: when drag-dropping files)?

I want to update a table. Hence when user wants to update it the insert form appears where the default values appear in the input boxes. But i can't load in the <input type=file....>.

Here is the code:

    <?php
    session_start();
    if(!isset($_SESSION['user']))
        {
            header("Location:index.php");
            exit();
        }
      include("./include/dbc.php");
      $a=$_REQUEST['apt'];
    $qry="select * from flats where app_name = '$a'";
    $result=mysql_query($qry) or die(mysql_error());
    while($res = mysql_fetch_array($result))
    {
     $ai=$res[0];
     $an=$res[1];
     $bn=$res[2];
     $lc=$res[3];
     $st=$res[4];
     $nf=$res[5];
     $ct=$res[6];
     $mp=$res[7];
     $lm=$res[8];
    }

    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <form id="form1" action="details1.php?ar=<?php echo $a;?>&api=<?php echo $ai;?>" method="post" enctype="multipart/form-data">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Welcome To Prime Properties</title>
    <link rel="stylesheet" href="style.css" type="text/css"/>

    </head>

    <body>
       <div class="container">
            <div class="heading">
                <div class="banner"><img src="../images/top.jpg" width="995" height="169" /></div>
            <!--menu start-->
                <div>
                    <?php  include('include/menu.php');?>
                    </div>
            <!--menu end-->

            </div>
            <div class="main">
            <!--left menu start-->
                <div class="left_menu">
                <?php  include('include/lm.php');?>
                </div>
            <!--left menu end-->
            <div class="divider"></div>
            <!--body contant goes here-->
            <div class="right">
                        <p>
                            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Enter Your Credentials......</p>
                           <fieldset><p class="first">
                                   <label for="a_name" >Appartment Name:</label>
                                    <input type="text" name="a_name" id="a_name" value="<?php echo $an;?>"><br/></input></p>
                <p>
                                <label for="b_name">Builder Name:</label>
                                <input type="text" name="b_name" id="b_name" value="<?php echo $bn;?>"><br/></input></p>
                            <p>
                             <label for="loc">Location:</label>
                             <select name="loc">
                                 <?php $qry1="select location from location where loc_id='$lc'";
                                                            $result1=mysql_query($qry1) or die(mysql_error());
                                                                while($res = mysql_fetch_array($result1)){
                                                            $op=$res[0];
                                                            }?>
                                <option value="<?php echo $lc?>"><?php echo $op;?></option>
                                <option value="1">Maligaon</option>
                            </select><br/></p>
                            <p>
                                <label for="status"> Status:</label>
                                <select name="status">
                                    <?php $qry1="select status from status where st_id='$st'";
                                                            $result1=mysql_query($qry1) or die(mysql_error());
                                                                while($res = mysql_fetch_array($result1)){
                                                            $sts=$res[0];
                                                            }?>
                                <option value="<?php echo $st?>"><?php echo $sts;?></option>
                                <option value="1">Ongoing</option>
                                <option value="2">Future</option>
                                <option value="3">Completed</option>
                            </select><br/></p>
                               <p><label for="no_flats">No of Flats:</label>
                                  <input type="text" name="no_flats" id="no_flats" value="<?php echo $nf;?>"><br/></input></p>
                            <p><label for="c_time">Completion Time:</label>
                                <?php $ct1=explode("  ", $ct);
                                ?>
                                <select name="month">
                                    <option><?php echo $ct1[0];?></option>
                                    <option>January</option>
                                    <option>February</option>
                                    <option>March</option>
                                    </select>
                                <select name="year">
                                    <option><?php echo $ct1[1];?></option>
                                    <option>2012</option>
                                    <option>2013</option>
                                    <option>2014</option>
                                </select>
                                    </p>
                            <p><label for="m_pic">Main Picture:</label>
                                <td><img src="images/<?php echo $mp?>" width="100" height="70" /></td>
                            <input type="file" name="photo"><br/></input></p>
                            <p><label for="l_map">Location Map:</label>
                                <td><img src="loc_images/<?php echo $lm?>" width="100" height="70" /></td>
                              <input type="file" name="photo"><br/></input></p>
                               <p class="submit">
                                   <input type="hidden" name="check" value="1"/>
                                   <button type="submit" name="submit" >UPDATE</button></p>
                           </fieldset></div>

            <!--body contant end here -->
        </div>


    </body>
    </html>
    </form>

What i should do?

解决方案

For security reasons, the value of a <input type=file> element can only be changed by a user. It's not possible to change the value through JavaScript or HTML.

相关文章