PHP ftp_put 没有上传文件
PHP ftp_put does not upload the file
我在 PHP 中创建了一个通过 FTP 将文件发送到主机的上传器。我的文件是一张照片。它不仅将照片成功发送给主机。
我的代码:
<?php
$name = $_FILES['cover']['name'];
$type = $_FILES['cover']['type'];
$size = $_FILES['cover']['size'];
$tmp = $_FILES['cover']['tmp_name'];
$image_properties = getimagesize($_FILES['cover']['tmp_name']);
$ftpHost = '*****';
$ftpUsername = '*****';
$ftpPassword = '*****';
$connId = ftp_connect($ftpHost) or die("Couldn't connect to $ftpHost");
$ftpLogin = ftp_login($connId, $ftpUsername, $ftpPassword);
$filename=md5($name.microtime()).substr($name,-4,4);
$namesql="************.com/7d97481b1fe66f4b51db90da7e794d9f/".$filename;
if(ftp_put($connId, $tmp, $filename, FTP_ASCII)) {
echo "File transfer successful - $name";
echo "<img src='$namesql' alt='melipic' width='240px'>";
}else{
echo "There was an error while uploading $name";
}
ftp_close($connId);
?>
<form role="form" action="" method="post" enctype="multipart/form-data">
<div class="form-group">
<label style="float:right;" for="exampleInputEmail1">cover profile</label>
<input name="cover" type="file" class="form-control" id="exampleInputEmail1">
</div>
<button name="btn" type="submit" class="btn btn-shadow btn-success">submit</button>
</form>
您的 ftp_put
参数顺序错误。此外,在上传二进制文件时,您需要使用 FTP_BINARY
模式(默认模式)。您不能强制使用 text/ascii 模式。
代码应该是:
ftp_put($connId, $filename, $tmp)
我在 PHP 中创建了一个通过 FTP 将文件发送到主机的上传器。我的文件是一张照片。它不仅将照片成功发送给主机。 我的代码:
<?php
$name = $_FILES['cover']['name'];
$type = $_FILES['cover']['type'];
$size = $_FILES['cover']['size'];
$tmp = $_FILES['cover']['tmp_name'];
$image_properties = getimagesize($_FILES['cover']['tmp_name']);
$ftpHost = '*****';
$ftpUsername = '*****';
$ftpPassword = '*****';
$connId = ftp_connect($ftpHost) or die("Couldn't connect to $ftpHost");
$ftpLogin = ftp_login($connId, $ftpUsername, $ftpPassword);
$filename=md5($name.microtime()).substr($name,-4,4);
$namesql="************.com/7d97481b1fe66f4b51db90da7e794d9f/".$filename;
if(ftp_put($connId, $tmp, $filename, FTP_ASCII)) {
echo "File transfer successful - $name";
echo "<img src='$namesql' alt='melipic' width='240px'>";
}else{
echo "There was an error while uploading $name";
}
ftp_close($connId);
?>
<form role="form" action="" method="post" enctype="multipart/form-data">
<div class="form-group">
<label style="float:right;" for="exampleInputEmail1">cover profile</label>
<input name="cover" type="file" class="form-control" id="exampleInputEmail1">
</div>
<button name="btn" type="submit" class="btn btn-shadow btn-success">submit</button>
</form>
您的 ftp_put
参数顺序错误。此外,在上传二进制文件时,您需要使用 FTP_BINARY
模式(默认模式)。您不能强制使用 text/ascii 模式。
代码应该是:
ftp_put($connId, $filename, $tmp)