首先:对不起我的英语,我会试着解释一下我想要的但是如果我做不好的话我很抱歉。
我正在尝试创建一个网页,允许用户将图片上传到服务器,页面上传网址,文件上传,用单选按钮选择上传方式。
我的问题是我不知道如何在选择url radio时禁用文件上传,例如:
url upload:网页读取网址并使用该图片。 文件上传:网页读取文件并使用该图像。
这就是我想要的,但问题是当两者都被选中时:页面上传文件并读取URL,但仅当选择了url radio时。如果选择了文件广播,则忽略url。
我知道问题是当你按下提交按钮时文件被上传,然后php服务器检查选中的单选按钮以及必须做什么。
如果选择了url radio,是否有任何模式可以避免文件上传?这里是页面脚本:
<?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>
提前致谢:)
答案 0 :(得分:1)
我建议您使用javascript进行客户端检查:只要切换单选按钮,您就可以清除正确的输入。
function setrad(radbut, input){
document.getElementById(radbut).checked = true;
document.getElementById(input).value = "";
}
通过这种方式,您可以将setrad
功能称为onClick="setrad('urlrad','file');"
(请注意,输入和无线电都应具有ID)。