duanjue9296 2016-12-23 10:43
浏览 32

如何在PHP中制作附件按钮? 我不是指造型原始按钮,而是使用图像作为按钮[复制]

This question already has an answer here:

I am making a Mail Compose Page.

I want to give the user an option to attach a file. I also want to make the attachment button as an image which I already have.

I have made an image button but the image is acting like a submit button. But I want it to be an Browse button.

My form is:

<form method="post" action="" enctype="multipart/form-data">
    To: <span class="error">* <?php $receiverIdErr ?></span>
    <select id="receiverId" name="receiverId">
        <?php
            $conn = connect();
            $receiverIdQuery = "SELECT Email FROM Users";
            $receiverIdResult = $conn->query($receiverIdQuery);
            if($receiverIdResult->num_rows > 0) {
                while($row = $receiverIdResult->fetch_assoc()) {
                    $Email = $row["Email"];
                    echo "<option value=\"$Email\">" . $row["Email"] . "</option>";
                }
            }
        ?>
    </select>
    <br /><br />
    Subject: <input type="text" name="Subject" required>
    <br /><br />
    Body: <span class="error">* <?php $BodyErr ?></span>
    <textarea name="Body" rows="10" cols="100" maxlength="300" required>
    </textarea>
    <br /><br />
    Attachment:
    <input type="image" src="paperclip4_black.png" width="20" height="20" name="myFile" id="myFile">
    <br /><br />
    <input type="submit" name="Send" value="Send">
</form>

And my PHP is:

<?php
$BodyErr = $receiverIdErr = "";
$Body = $Subject = $receiverId = $filePath = "";

if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $Subject = test_input($_POST["Subject"]);
}

if ($_SERVER["REQUEST_METHOD"] == "POST") {
    if (empty($_POST["Body"]))
        $BodyErr = "Body is required";
    else
        $Body = test_input($_POST["Body"]);
}

if ($_SERVER["REQUEST_METHOD"] == "POST") {
    if (empty($_POST["receiverId"]))
        $receiverIdErr = "Choose a receiver";
    else
        $receiverId = test_input($_POST["receiverId"]);
}

if ($_SERVER["REQUEST_METHOD"] == "POST") {
    if (isset($_FILES["myFile"]["name"])) {
        $target_dir = "asset/attachments/" . time();
        $target_file = $target_dir . basename($_FILES["myFile"]["name"]);
        $uploadOk = 1;
        $imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);

        if ($uploadOk == 0) {
            $message = "Sorry, your file was not uploaded.<br />";
        }
        else {
            if (move_uploaded_file($_FILES["myFile"]["tmp_name"], $target_file)) {
                $filePath = $target_file;
            }
            else {
                $filePath = $target_file;
            }
        }   
    }
}
?>
</div>
  • 写回答

1条回答 默认 最新

  • dskvfdxgdo2422392 2016-12-23 10:48
    关注

    Might be you are looking for this :

    <input type="file" name="fileToUpload" id="fileToUpload">
    
    评论

报告相同问题?

悬赏问题

  • ¥15 csmar数据进行spss描述性统计分析
  • ¥15 各位请问平行检验趋势图这样要怎么调整?说标准差差异太大了
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 wpf界面一直接收PLC给过来的信号,导致UI界面操作起来会卡顿
  • ¥15 init i2c:2 freq:100000[MAIXPY]: find ov2640[MAIXPY]: find ov sensor是main文件哪里有问题吗
  • ¥15 运动想象脑电信号数据集.vhdr
  • ¥15 三因素重复测量数据R语句编写,不存在交互作用
  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?