2011-11-30 19 views
6

Nota:Poner en valor por defecto <input type = archivo ....>

Las respuestas & comentarios a continuación reflejan el estado de navegadores antiguos en 2009. Ahora usted puede ajustar el valor de la presentar dinámicamente elemento de entrada/programáticamente usando JavaScript en 2017.

Vea la respuesta en esta pregunta para obtener más información, así como una demostración:
How to set file input value programatically (i.e.: when drag-dropping files)?

Quiero actualizar una tabla. Por lo tanto, cuando el usuario desea actualizarlo, aparece el formulario de inserción donde aparecen los valores predeterminados en los cuadros de entrada. Pero no puedo cargar en el <input type=file....>.

Aquí está el código:

<?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> 

lo que debería hacer?

+2

Supongo que sabes esto, pero pensé que lo señalaría por si acaso, estás enviando un encabezado después de que el contenido ya haya sido enviado y que sea "ilegal". Además, debe evitar la variable '$ _REQUEST ['apt']' para evitar inyecciones de SQL. Existen algunos errores graves de XHTML en su documento que debe validar. Por ejemplo, toda la página está encapsulada en un elemento 'form'. –

+0

Gracias. Pero mi problema es que el valor predeterminado para no se carga mientras que otros cuadros de entrada se cargan con su valor predeterminado recuperado de la base de datos. ¿Cómo puedo cargar el valor predeterminado en y . –

+1

Posible duplicado de [Cómo establecer el valor de entrada de archivo de forma programática (es decir, cuando se arrastran archivos)?] (Https://stackoverflow.com/questions/47515232/how-to-set-file-input-value-programatically- ie-when-drag-dropping-files) –

Respuesta

15

Por razones de seguridad, el valor de un elemento <input type=file> solo lo puede cambiar un usuario. No es posible cambiar el valor a través de JavaScript o HTML.

+0

Gracias por la información. –

+0

Todo el mundo sigue repitiendo que no es posible por razones de seguridad, mientras que no hay ninguna violación de seguridad si solo muestra el nombre de un archivo, que es suficiente para bastantes situaciones. – Vroomfundel

Cuestiones relacionadas