如何使用 PHP 和 HTML 格式将文件名发送到我的 gmail?
How to send file name to my gmail with PHP and HTML form?
我想如果有人上传一个文件得到文件的名字到我的gmail.For例子,我希望你的电子邮件到达"FileName: background.jpg"
PHP代码:
<?php
if(isset($_FILES['file_array'])){
$name_array = $_FILES['file_array']['name'];
$tmp_name_array = $_FILES['file_array']['tmp_name'];
$type_array = $_FILES['file_array']['type'];
$size_array = $_FILES['file_array']['size'];
$error_array = $_FILES['file_array']['error'];
for($i = 0; $i < count($tmp_name_array); $i++){
if(move_uploaded_file($tmp_name_array[$i], "uploads/".$name_array[$i])){
header("Location:");
}
}
}
?>
我试过这样:
<?php
if(isset($_FILES['file_array'])){
$name_array = $_FILES['file_array']['name'];
$tmp_name_array = $_FILES['file_array']['tmp_name'];
$type_array = $_FILES['file_array']['type'];
$size_array = $_FILES['file_array']['size'];
$error_array = $_FILES['file_array']['error'];
$za = "mygmail@gmail.com";
$od = "Od: " . $Email . "\r\n";
$info .= "FileName:" .$name_array. "\r\n";
for($i = 0; $i < count($tmp_name_array); $i++){
if(move_uploaded_file($tmp_name_array[$i], "uploads/".$name_array[$i])){
header("Location:");
mail($za, $od, $info);
}
}
}
?>
但是我刚收到邮件"FileName: array"。
HTML代码:
<form class="contact_form" action="../assets/php/postavi_oglas.php" method="post" enctype="multipart/form-data">
<label>Izaberite fotografije:</label>
<input class="contact_area" type="file" name="file_array[]">
<input class="contact_area" type="file" name="file_array[]">
<input class="contact_area" type="file" name="file_array[]">
<input class="contact_area" type="file" name="file_array[]">
<input class="contact_area" type="file" name="file_array[]">
<input class="btn btn-theme" type="submit" value="Posalji Fotografije">
</form>
它说数组因为它是数组并且需要在循环中
for($i = 0; $i < count($tmp_name_array); $i++){
if(move_uploaded_file($tmp_name_array[$i], "uploads/".$name_array[$i])){
// a array
$fname=$name_array[$i];
$info= "FileName:" .$fname. "\r\n";
header("Location:");
mail($za, $od, $info);
}
你这里有数组,因为你在邮件中发送了一个。就像下面的代码一样使用它,只通过电子邮件发送,而不是通过文件发送一封电子邮件。我更喜欢这种行为。
$info = '';
for($i = 0; $i < count($tmp_name_array); $i++){
if(move_uploaded_file($tmp_name_array[$i], "uploads/".$name_array[$i])){
$info .= 'Filename '.$i.': '.$name_array[$i]. "\r\n";
}
}
mail($za, $od, $info);
header("Location:");
我想如果有人上传一个文件得到文件的名字到我的gmail.For例子,我希望你的电子邮件到达"FileName: background.jpg"
PHP代码:
<?php
if(isset($_FILES['file_array'])){
$name_array = $_FILES['file_array']['name'];
$tmp_name_array = $_FILES['file_array']['tmp_name'];
$type_array = $_FILES['file_array']['type'];
$size_array = $_FILES['file_array']['size'];
$error_array = $_FILES['file_array']['error'];
for($i = 0; $i < count($tmp_name_array); $i++){
if(move_uploaded_file($tmp_name_array[$i], "uploads/".$name_array[$i])){
header("Location:");
}
}
}
?>
我试过这样:
<?php
if(isset($_FILES['file_array'])){
$name_array = $_FILES['file_array']['name'];
$tmp_name_array = $_FILES['file_array']['tmp_name'];
$type_array = $_FILES['file_array']['type'];
$size_array = $_FILES['file_array']['size'];
$error_array = $_FILES['file_array']['error'];
$za = "mygmail@gmail.com";
$od = "Od: " . $Email . "\r\n";
$info .= "FileName:" .$name_array. "\r\n";
for($i = 0; $i < count($tmp_name_array); $i++){
if(move_uploaded_file($tmp_name_array[$i], "uploads/".$name_array[$i])){
header("Location:");
mail($za, $od, $info);
}
}
}
?>
但是我刚收到邮件"FileName: array"。
HTML代码:
<form class="contact_form" action="../assets/php/postavi_oglas.php" method="post" enctype="multipart/form-data">
<label>Izaberite fotografije:</label>
<input class="contact_area" type="file" name="file_array[]">
<input class="contact_area" type="file" name="file_array[]">
<input class="contact_area" type="file" name="file_array[]">
<input class="contact_area" type="file" name="file_array[]">
<input class="contact_area" type="file" name="file_array[]">
<input class="btn btn-theme" type="submit" value="Posalji Fotografije">
</form>
它说数组因为它是数组并且需要在循环中
for($i = 0; $i < count($tmp_name_array); $i++){
if(move_uploaded_file($tmp_name_array[$i], "uploads/".$name_array[$i])){
// a array
$fname=$name_array[$i];
$info= "FileName:" .$fname. "\r\n";
header("Location:");
mail($za, $od, $info);
}
你这里有数组,因为你在邮件中发送了一个。就像下面的代码一样使用它,只通过电子邮件发送,而不是通过文件发送一封电子邮件。我更喜欢这种行为。
$info = '';
for($i = 0; $i < count($tmp_name_array); $i++){
if(move_uploaded_file($tmp_name_array[$i], "uploads/".$name_array[$i])){
$info .= 'Filename '.$i.': '.$name_array[$i]. "\r\n";
}
}
mail($za, $od, $info);
header("Location:");