當前位置:首頁 » 雲伺服器 » php如何上傳文件到伺服器

php如何上傳文件到伺服器

發布時間: 2022-09-28 18:09:17

『壹』 php傳文本框到伺服器如何保存

ftp上傳工具上傳即可。



這里以8UFTP軟體為例:

1、下載安裝FTP軟體,輸入伺服器IP地址,FTP的用戶名和密碼進行連接。



2、連接FTP後,找到要上傳的PHP項目文件,上傳到伺服器即可。

『貳』 什麼是ftp文件,怎麼將php網站文件上傳到伺服器

ftp是
文件傳輸協議
,利用此協議可以在網路上傳輸文件。
把文件上傳到伺服器,一般都是使用ftp的方法,因為往往伺服器都會提供ftp功能。具體操作需要安裝一個方便操作的ftp客戶端,例如TotalCommander就很好,在客戶端裡面建議一個會話,輸入伺服器的地址、用戶名、密碼,然後就可以連接伺服器,連接成功後可以看見伺服器上的文件,可以和本地的進行
雙向傳輸
(可以上傳和下載)。
如果只上傳個別文件,可以使用瀏覽器或者DOS進行傳輸,瀏覽器的方法是打開地址:ftp://用戶名:密碼@伺服器地址/,DOS命令是ftp
伺服器地址,然後輸入用戶名和密碼。

『叄』 php上傳文件到伺服器

1、通過PHP,可以把文件上傳到伺服器。創建一個文件上傳表單,下面這個供上傳文件的 HTML 表單:

<html>
<body>

<formaction="upload_file.php"method="post"
enctype="multipart/form-data">
<labelfor="file">Filename:</label>
<inputtype="file"name="file"id="file"/>
<br/>
<inputtype="submit"name="submit"value="Submit"/>
</form>

</body>
</html>

2、創建上傳腳本,命名為"upload_file.php" 文件含有供上傳文件的代碼:

<?php
if($_FILES["file"]["error"]>0)
{
echo"Error:".$_FILES["file"]["error"]."<br/>";
}
else
{
echo"Upload:".$_FILES["file"]["name"]."<br/>";
echo"Type:".$_FILES["file"]["type"]."<br/>";
echo"Size:".($_FILES["file"]["size"]/1024)."Kb<br/>";
echo"Storedin:".$_FILES["file"]["tmp_name"];
}
?>

註:通過使用 PHP 的全局數組 「$_FILES」,就可以實現從客戶計算機向遠程伺服器上傳文件。

『肆』 php如何上傳圖片到遠程伺服器

可以使用curl這個擴展來實現。
PHP 支持的由Daniel Stenberg創建的libcurl庫允許你與各種的伺服器使用各種類型的協議進行連接和通訊。
libcurl支持http、https、ftp、gopher、telnet、dict、file和ldap協議。libcurl同時也支持HTTPS認證、HTTP POST、HTTP PUT、 FTP 上傳(這個也能通過PHP的FTP擴展完成)、HTTP 基於表單的上傳、代理、cookies和用戶名+密碼的認證。
curl_close() 關閉一個cURL會話。
curl__handle()復制一個cURL句柄和它的所有選項。
curl_errno()返回最後一次的錯誤號。
curl_error()返回一個保護當前會話最近一次錯誤的字元串。
curl_escape()返回轉義字元串,對給定的字元串進行URL編碼。
curl_exec()執行一個cURL會話。
curl_file_create()創建一個CURLFile對象。
curl_getinfo()獲取一個cURL連接資源句柄的信息。
curl_init()初始化一個cURL會話。
curl_multi_add_handle()向curl批處理會話中添加單獨的curl句柄。
curl_multi_close()關閉一組cURL句柄。
curl_multi_exec()運行當前cURL句柄的子連接
curl_multi_getcontent()如果設置了CURLOPT_RETURNTRANSFER,則返回獲取的輸出的文本流。
curl_multi_info_read()獲取當前解析的cURL的相關傳輸信息。
curl_multi_init()返回一個新cURL批處理句柄。
curl_multi_remove_handle()移除curl批處理句柄資源中的某個句柄資源。
curl_multi_select()等待所有cURL批處理中的活動連接。
curl_multi_setopt()設置一個批處理cURL傳輸選項。
curl_multi_strerror()返回描述錯誤碼的字元串文本。
curl_pause()暫停及恢復連接。
curl_reset()重置libcurl的會話句柄的所有選項。
curl_setopt_array()為cURL傳輸會話批量設置選項。
curl_setopt()設置一個cURL傳輸選項。
curl_share_close()關閉cURL共享句柄。
curl_share_init()初始化cURL共享句柄。
curl_share_setopt()設置一個共享句柄的cURL傳輸選項。
curl_strerror()返回錯誤代碼的字元串描述。
curl_unescape()解碼URL編碼後的字元串。
curl_version()獲取cURL版本信息。

『伍』 PHP上傳文件到伺服器的指定文件夾,怎麼實現

下面是接收前台傳過來的圖片,然後存儲的代碼。原理接本上都相同。注意。分割線下面是對應的html代碼。不過我這裡面引用了我的主資料庫操作文件。所以你可能運行不起來。但是你可以把sql之類的還有$res之類的地方注釋掉。。不行了。太多了。html頁面發不下你追問吧。我追問裡面再發html代碼
<?php
/**
* Created by alandic lidjio.
* User: lidjio
* Date: 2016/12/16
* Time: 12:04
*/
header("Content-Type:text/html;charset=utf-8");
require_once ('Sqltool.php');
//step 1 使用$_FILES['pic']["error"] 檢查錯誤
if(isset($_GET["action"])=="img"){
if($_FILES["img"]["error"] > 0){
switch($_FILES["img"]["error"]) {
case 1:
echo "<script type='text/javascript'>alert('上傳的文件超過了 php.ini 中 upload_max_filesize 選項限制的值<br>');history.back();</script>";
break;
case 2:
echo "<script type='text/javascript'>alert('上傳文件的大小超過了 HTML 表單中 MAX_FILE_SIZE 選項指定的值');history.back();</script>";
break;
case 3:
echo "<script type='text/javascript'>alert('文件只有部分被上傳');history.back();</script>";
break;
case 4:
echo "<script type='text/javascript'>alert('沒有文件被上傳');history.back();</script>";
break;
default:
echo "<script type='text/javascript'>alert('末知錯誤');history.back();</script>";
}
exit;
}
$maxsize=2000000; //50k
//step 2 使用$_FILES["pic"]["size"] 限制大小 單位位元組 2M=2000000
if($_FILES["img"]["size"] > $maxsize ) {
echo "<script type='text/javascript'>alert('上傳的文件太大,不能超過{$maxsize}位元組');history.back();</script>";
exit;
}
//step 3 使用$_FILES["pic"]["type"]或是文件的擴展名 限制類型 MIME image/gif image/png gif png jpg
/* list($dl, $xl) = explode("/", $_FILES["pic"]["type"]);
if($dl!="image"){
echo "請上傳一個圖片,不充許其它類型文件";
exit;
}
*/
$allowtype=array("png", "gif", "jpg", "jpeg");
$arr=explode(".", $_FILES["img"]["name"]);
$hz=$arr[count($arr)-1];
if(!in_array($hz, $allowtype)){
echo "<script type='text/javascript'>alert('這是不允許的類型');history.back();</script>";
exit;
}
//step 4 將讓傳後的文件名改名
$filepath="upload/";
$fileimgweb="upload/";//為了符合UBB的路徑
$randname=date("Y").date("m").date("d").date("H").date("i").date("s").rand(100, 999).".".$hz;
//將臨時位置的文件移動到指定的目錄上即可
if(is_uploaded_file($_FILES["img"]["tmp_name"])){
if(move_uploaded_file($_FILES["img"]["tmp_name"],$filepath.$randname)){
$imgnum=$_GET['imgnum'];
$dt_carck_id=$_GET['dt_carck_id'];

echo "<script type='text/javascript'>history.back();</script>";
session_start();
$_SESSION['images'] = $fileimgweb.$randname;

$fileurl=$fileimgweb.$randname;

echo $fileurl;

$sql="UPDATE dt_carcheck SET dt_carck_img".$imgnum."= '"."$fileurl"."' WHERE dt_carck_id='".$dt_carck_id."'";

$res=execute_dml($sql);

echo "<br/>";
// echo $sql;
echo "<br/>";
// echo $res;

}else{
echo "<script type='text/javascript'>alert('上傳失敗');history.back();</script>";
}
}else{
echo"<script type='text/javascript'>alert('不是一個上傳文件');history.back();</script>";
}
}
?>
---------------------------------------------------------------------------------

『陸』 php 架構的網站 資料庫文件(*.sql) 怎樣上傳到伺服器

如果您要將自己的資料庫導入伺服器,
1.
可以點擊下面的「建立備份」一。
2.
點擊建立「備份用FTP」。
3.
用FTP將您自己的資料庫備份文件上傳到伺服器上,覆蓋伺服器上的1.bak(SQL
2000)/1.sql(Mysql)。
4.
再點從備份一中的「備份中還原。」
5.
如果導入過程中發生意外,需要重新導入,您要先點清空資料庫。
(在備份還原前,請您先停止您的網站一分鍾後再操作,否則資料庫正在使用中會造成操作失敗。)
還不清楚的話,你訪問下這個網址:

『柒』 怎麼將php文件上傳到伺服器上

創建一個文件上傳表單
允許用戶從表單上傳文件是非常有用的。
請看下面這個供上傳文件的 HTML 表單:
<html>
<body>
<form action="upload_file.php" method="post"
enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file" />
<br />
<input type="submit" name="submit" value="Submit" />
</form>
</body>
</html>
請留意如下有關此表單的信息:
<form> 標簽的 enctype 屬性規定了在提交表單時要使用哪種內容類型。在表單需要二進制數據時,比如文件內容,請使用 "multipart/form-data"。
<input> 標簽的 type="file" 屬性規定了應該把輸入作為文件來處理。舉例來說,當在瀏覽器中預覽時,會看到輸入框旁邊有一個瀏覽按鈕。
注釋:允許用戶上傳文件是一個巨大的安全風險。請僅僅允許可信的用戶執行文件上傳操作。
創建上傳腳本
"upload_file.php" 文件含有供上傳文件的代碼:
<?php
if ($_FILES["file"]["error"] > 0)
{
echo "Error: " . $_FILES["file"]["error"] . "<br />";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "Stored in: " . $_FILES["file"]["tmp_name"];
}
?>
通過使用 PHP 的全局數組 $_FILES,你可以從客戶計算機向遠程伺服器上傳文件。
第一個參數是表單的 input name,第二個下標可以是 "name", "type", "size", "tmp_name" 或 "error"。就像這樣:
$_FILES["file"]["name"] - 被上傳文件的名稱
$_FILES["file"]["type"] - 被上傳文件的類型
$_FILES["file"]["size"] - 被上傳文件的大小,以位元組計
$_FILES["file"]["tmp_name"] - 存儲在伺服器的文件的臨時副本的名稱
$_FILES["file"]["error"] - 由文件上傳導致的錯誤代碼
這是一種非常簡單文件上傳方式。基於安全方面的考慮,您應當增加有關什麼用戶有權上傳文件的限制。
上傳限制
在這個腳本中,我們增加了對文件上傳的限制。用戶只能上傳 .gif 或 .jpeg 文件,文件大小必須小於 20 kb:
<?php
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg"))
&& ($_FILES["file"]["size"] < 20000))
{
if ($_FILES["file"]["error"] > 0)
{
echo "Error: " . $_FILES["file"]["error"] . "<br />";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "Stored in: " . $_FILES["file"]["tmp_name"];
}
}
else
{
echo "Invalid file";
}
?>
注釋:對於 IE,識別 jpg 文件的類型必須是 pjpeg,對於 FireFox,必須是 jpeg。
保存被上傳的文件
上面的例子在伺服器的 PHP 臨時文件夾創建了一個被上傳文件的臨時副本。
這個臨時的復制文件會在腳本結束時消失。要保存被上傳的文件,我們需要把它拷貝到另外的位置:
<?php
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg"))
&& ($_FILES["file"]["size"] < 20000))
{
if ($_FILES["file"]["error"] > 0)
{
echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";
if (file_exists("upload/" . $_FILES["file"]["name"]))
{
echo $_FILES["file"]["name"] . " already exists. ";
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"],
"upload/" . $_FILES["file"]["name"]);
echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
}
}
}
else
{
echo "Invalid file";
}
?>
上面的腳本檢測了是否已存在此文件,如果不存在,則把文件拷貝到指定的文件夾。

『捌』 怎麼通過HTML+PHP上傳文件到伺服器

HTML代碼:


<body>

<form action="" method="post" enctype="multipart/form-data" name="upload_form">

<label>選擇圖片文件</label>

<input name="imgfile" type="file" accept="image/gif, image/jpeg"/>

<input name="upload" type="submit" value="上傳" />

</form>

</body>


PHP代碼:


if (isset($_FILES['imgfile'])

&& is_uploaded_file($_FILES['imgfile']['tmp_name']))

{

$imgFile = $_FILES['imgfile'];

$upErr = $imgFile['error'];

if ($upErr == 0)

{

$imgType = $imgFile['type']; //文件類型。

/* 判斷文件類型,這個例子里僅支持jpg和gif類型的圖片文件。*/

if ($imgType == 'image/jpeg'

|| $imgType == 'image/gif')

{

$imgFileName = $imgFile['name'];

$imgSize = $imgFile['size'];

$imgTmpFile = $imgFile['tmp_name'];

/*

將文件從臨時文件夾移到上傳文件夾中。

注意:upfile這個文件夾必須先創建好,不然會報錯。

*/

move_uploaded_file($imgTmpFile, 'upfile/'.$imgFileName);

/*顯示上傳後的文件的信息。*/

$strPrompt = sprintf("文件%s上傳成功<br>"

. "文件大小: %s位元組<br>"

. "<img src='upfile/%s'>"

, $imgFileName, $imgSize, $imgFileName

);

echo $strPrompt;

}

else

{

echo "請選擇jpg或gif文件,不支持其它類型的文件。";

}

}

else

{

echo "文件上傳失敗。<br>";

switch ($upErr)

{

case 1:

echo "超過了php.ini中設置的上傳文件大小。";

break;

case 2:

echo "超過了MAX_FILE_SIZE選項指定的文件大小。";

break;

case 3:

echo "文件只有部分被上傳。";

break;

case 4:

echo "文件未被上傳。";

break;

case 5:

echo "上傳文件大小為0";

break;

}

}

}

else

{

}


『玖』 用php如何把一些文件和圖片上傳到另一指定的伺服器

一個實例:

首先,在自己台式機和筆記本上都開通了ftp,這個不會的同學可以網上查serv-u,相關教程肯定不少的。

然後在台式機本地做了個測試:

$ftp_server = "192.168.1.100";
$ftp_user_name = "laohu";
$ftp_user_pass = "123456";
$conn_id = ftp_connect($ftp_server) or die("Couldn't connect to $ftp_server");
$file = 'test.txt';
$remote_file = '/test/a.txt';
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

if (ftp_put($conn_id, $remote_file, $file, FTP_BINARY)) {
echo "文件移動成功\n";
} else {
echo "移動失敗\n";
}
ftp_close($conn_id);

運行後:文件移動成功。

要的就是這個效果了,之後用台式機做程序伺服器,上傳附件時全用ftp方法上傳至筆記本上,筆記本ip是105,相應代碼如下:

if (is_uploaded_file($_FILES['uploadfile']['tmp_name'])) {
$ftp_server = "192.168.1.105";
$ftp_user_name = "lesley";
$ftp_user_pass = "123456";
$conn_id = ftp_connect($ftp_server) or die("Couldn't connect to $ftp_server");
$file = $_FILES['uploadfile']['tmp_name'];
$remote_file = '/test/'.$_FILES['uploadfile']['name'];
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

if (ftp_put($conn_id, $remote_file, $file, FTP_BINARY)) {
echo "文件:".$_FILES['uploadfile']['name']."上傳成功\n";
} else {
echo "上傳失敗\n";
}
ftp_close($conn_id);
}

對應的前台頁面代碼:

<form action="uploadfile.php" method="post" enctype="multipart/form-data">
<input type="file" name="uploadfile" id="uploadfile" />
<input type="submit" name="submit" value="submit" />
</form>

運行後確實成功。

需要注意:
在用ftp_put方法時,第四個參數傳送模式,需要用FTP_BINARY(二進制模式),用FTP_ASCII(文本模式)時,圖片能上傳但無法顯示,其他文件重命名、中文亂碼解決、上傳許可權控制等,就不在此提及了。

熱點內容
IDE和腳本 發布:2022-11-29 23:02:19 瀏覽:970
c語言列印空格 發布:2022-11-29 22:59:39 瀏覽:12
比較強大的編譯器 發布:2022-11-29 22:58:47 瀏覽:425
linux搭建內網郵件伺服器 發布:2022-11-29 22:58:39 瀏覽:680
python命名規則 發布:2022-11-29 22:54:47 瀏覽:886
如何給exe文件加密 發布:2022-11-29 22:53:57 瀏覽:694
公司內部搭建文件伺服器 發布:2022-11-29 22:53:50 瀏覽:132
dosedit編譯命令 發布:2022-11-29 22:42:32 瀏覽:617
axu資料庫 發布:2022-11-29 22:42:15 瀏覽:572
買車要注意哪些假配置 發布:2022-11-29 22:41:31 瀏覽:967