2014-02-18 35 views
0

我想修改我的表单以将文件上传到服务器,并将上传文件的完整路径保存到数据库。将PHP映像上传到服务器,并将路径保存到PostgreSQL数据库

代码:

//EDYCJA AGENTA 

    function edycja_agenta($id) 

    { 

     $q = "SELECT id, ostatnie_logowanie, profil_id, adres_ip, status, lokalizacja, adres_mac, wersja_programu FROM agenty WHERE id=$id"; 

     $wynik = pg_query($q) or die("Zapytanie niepoprawne:".$q); 

     $ilosc=pg_numrows($wynik); 



     $i=0; 

while ($i < $ilosc) { 

     $id=pg_result($wynik,$i,"id"); 

     $lokalizacja=pg_result($wynik,$i,"lokalizacja"); 

     $ostatnie_logowanie=pg_result($wynik,$i,"ostatnie_logowanie"); 

     $profil_id=pg_result($wynik,$i,"profil_id"); 

     $adres_ip=pg_result($wynik,$i,"adres_ip"); 

     $status=pg_result($wynik,$i,"status"); 

     $adres_mac=pg_result($wynik,$i,"adres_mac"); 

     $wersja_programu=pg_result($wynik,$i,"wersja_programu"); 

     $i++; 

    } 

    echo' 



<form action="agent.php?id='.$id.'&zapisz" method="post" name="formularz"> 







    <div class="control-group"> 
    <label class="control-label">Lokalizacja</label> 
    <div class="controls"> 
     <input type="text" name="lokalizacja" required value="'.$lokalizacja.'" /> 
     <p class="help-block"></p> 
    </div> 
    </div> 



    <label class="control-label" >Profil</label> 

    <div class="controls"> 

      <select class="formularz_select" name="profil_nazwa" id="lista">'; 

      echo pobierz_profile($profil_id); 

      echo ' </select> 

    </div> 







<button type="submit" class="btn btn-primary">Zapisz dane</button> 









</form> 



'; 

    } 



//KONIEC EDYCJA AGENTA 





    //ZAPIS EDYCJA AGENTA 

    function zapisz($id) 

    { 





     if (isset($_POST['profil_nazwa'])) 

     $profil_nazwa= $_POST['profil_nazwa']; 

     if (isset($_POST['lokalizacja'])) 

     $lokalizacja= $_POST['lokalizacja']; 





if(isset($_POST['lokalizacja']) AND isset($_POST['profil_nazwa'])) { 

     $zapytanie  = "SELECT id FROM profile WHERE nazwa='$profil_nazwa'"; 

     $odpowiedz  = pg_query($zapytanie) or die("Zapytanie niepoprawne:".$zapytanie); 

     $id_profilu = pg_result($odpowiedz,0,"id"); 





      $q = "UPDATE agenty SET profil_id='$id_profilu', lokalizacja='$lokalizacja', status='1' WHERE id=$id"; 

      $wynik = pg_query($q) or die("Zapytanie niepoprawne 1:".$q); 

      if($wynik) { $GLOBALS[komunikat_edycja_agenta]="<div id=\"myAlert\" class=\"alert alert-success fade\"><a class=\"close\" data-dismiss=\"alert\">×</a>Edycja zakończona sukcesem</div>"; 

      } else {  $GLOBALS[komunikat_edycja_agenta]="<div id=\"myAlert\" class=\"alert alert-error fade\"><a class=\"close\" data-dismiss=\"alert\">×</a>Edycja zakończona błędem</div>";  

    } 





} 



    } 



//KONIEC ZAPISU EDYCJA AGENTA 

我知道我需要使用的输入类型的文件,但我对如何路径保存到数据库,以及如何指定文件夹的上传任何线索文件。

+0

从添加一个实体开始pe属性到你的表单标签:enctype ='multipart/form-data' –

+0

以及如何指定要保存的文件的路径? –

回答

3

那里有上传文件的某些键:

  1. <input type='file' name='file_name' />必须有这种投入;
  2. ​​形式必须加密属性
  3. 得到上传的文件,你需要使用$ _FILES在PHP服务器端,在这种情况下,你可以 打印$ _FILES [“FILE_NAME”]看到的细节,记得$ _FILES数组的键必须EQ输入的名称值( “FILE_NAME”)
  4. 来存储你需要使用move_uploaded_file($ temp_name,$的save_path)文件,$的save_path必须可写

看到一个例子,请到这里:http://www.w3schools.com/PHP/php_file_upload.asp

相关问题