[英]Processing input from textbox and file in PHP form
我尝试制作一个HTML和php页面以分别进行输入和处理。 在HTML页面中,用户可以选择输入文本或上传文件。
<form action="target.php" method='POST' enctype="multipart/form-data" id="form">
<table width="950px" align="center">
<tr>
<table width="100%" align="center" cellpadding="0" cellspacing="0" class="table1" border="0">
<tr valign="middle" align="left"><td width="15" height="10"></td><td></td></tr>
<tr valign="middle" align="left">
<td width="15"></td>
<td><font color="White">input1</font>
<td width="15"></td>
<td>
<font color="Red"><input type="file" name="file" size="42"><br></font><font color="White">or paste below:</font><br>
<textarea name="sequence1" cols="96" rows="7"></textarea><br>
</font>
</td>
</tr>
</table>
同样,在PHP页面中,我可以成功地将上传的文件从html页面传输到一个变量,并运行Shell脚本,但无法处理文本框中的内容。
<?php
$a = $_FILES['file']['tmp_name'];
$c = (isset($_POST['sequence1'])) ? $_POST['sequence1'] : false;
if($a!=NULL)
{
$output=shell_exec("sh server.sh $a");
}
elseif ($c!=NULL){
$output=shell_exec("sh server.sh $c");}
else{
echo No input;}
?>
任何人都可以提出建议,这将帮助我解决这个问题。
这样的事情应该工作
if(!empty($_FILES['file']['tmp_name'])){
$file=$_FILES['file']['tmp_name'];
}elseif(!empty($_POST['sequence1'])){
$file = tmpfile();
fwrite($file, $_POST['sequence1']);
fclose($file);
}else{
///errror
}
$output=shell_exec("sh server.sh $file");
将此行添加到代码中应该可行!
elseif(isset($_POST['sequence1'])){
$c=$_POST['sequence1'];
$f1='temp1.txt';
file_put_contents($f1, $c);
else{
///errror
}
$output=shell_exec("sh server.sh $f1");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.