PHP映像上传到服务器,并保存到PostgreSQL数据库的路径

时间:2014-02-18 14:02:23

标签: php database file postgresql upload

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

代码:

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

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

1 个答案:

答案 0 :(得分:3)

上传文件有一些键:

  1. <input type='file' name='file_name' />必须有此类输入;
  2. <form encrypt='multipart/form-data'>表单必须具有加密属性
  3. 上传文件你需要在php服务器端使用$ _FILES,在这种情况下,你可以 打印$ _FILES ['file_name']查看详细信息,记住$ _FILES数组键必须eq输入的名称值(“file_name”)
  4. 存储您需要使用的文件move_uploaded_file($ temp_name,$ save_path),$ save_path必须可写
  5. 要查看示例,请转到此处:http://www.w3schools.com/PHP/php_file_upload.asp