繁体   English   中英

处理来自文本框和PHP格式文件的输入

[英]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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 <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>&nbsp;&nbsp;&nbsp;&nbsp;
    </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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM