簡體   English   中英

如果選中了單選,則避免發布$ _FILES個帖子

[英]Avoid $_FILES post if radio is checked

首先:對不起我的英語,我會盡力解釋我想要的內容,但是對不起,如果我做得不好。

我正在嘗試創建一個網頁,以允許用戶將圖像上傳到服務器,該頁面具有url上傳和文件上傳,並帶有單選按鈕以選擇上傳方法。

我的問題是,當選擇url廣播時,我不知道如何禁用文件上傳,例如:

網址上傳:網頁讀取網址並使用該圖片。 文件上傳:網頁讀取文件並使用該圖片。

那就是我想要的,但是問題是當兩者都被選中時:頁面上載文件並讀取url,但是僅當選擇了url單選時。 如果選擇了文件收音機,則將忽略url。

我知道問題在於,當您按下提交按鈕時,文件被上傳,然后php服務器檢查選定的單選按鈕以及必須執行的操作。

如果選擇了URL廣播,是否有任何方式可以避免文件上傳?,這是頁面的腳本:

    <?php
    if ($_POST) {

        if ($_POST["filesource"] === "file"){
            $fileread = $_FILES["file"]["tmp_name"];
        }else{
            $fileread = $_POST["url"];
        }

        if ($fileread){
                include('includes/imgresize.php');
                $image = new SimpleImage();
                $image->load($fileread);
                $image->resize(250,400);
                $image->save('picture.jpg');
                echo "La imagen subida es: <br>";
                echo "<img src='picture.jpg'>";
                echo die;
        }else{
            echo "No se ha seleccionado ningún archivo.";
            echo die;
        }
    }
?>
<script>
    function setrad(radbut){
        document.getElementById(radbut).checked = true;
    }
</script>

<form action="" method="post" enctype="multipart/form-data" name="form1" id="form1">
    <table>
        <tr><td><input type="radio" name="filesource" value="url" id="urlrad" checked>URL:</td><td><input type="text" size="64" name="url" onClick="setrad('urlrad');"></td></tr>
        <tr><td><input type="radio" name="filesource" value="file" id="filerad">File:</td><td><input type="file" size="50" name="file" id="file" onClick="setrad('filerad');"/></td></tr>
    </table>


    <input name="Submit" type="submit" id="submit" value="Submit" />
</form>

提前致謝 :)

我建議您使用javascript進行客戶端檢查:只要切換單選按鈕,您就可以清除正確的輸入。

function setrad(radbut, input){
    document.getElementById(radbut).checked = true;
    document.getElementById(input).value = "";
}

這樣,您可以調用setrad函數,例如onClick="setrad('urlrad','file');" (請注意,輸入和廣播都應有一個ID)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM