|
|

楼主 |
发表于 2006-2-20 09:21:11
|
显示全部楼层
class setpost
{
var $formpost;
function setpost($post,$viewmuch)
{
$this->viewsingle=$viewmuch;
$this->formpost="<form enctype=multipart/form-data action=".$post." id=FORM name=FORM method=post >" ;
if(!($viewmuch))
{
echo "<center>" ;
echo "<table border=0 width=800 cellspacing=1 cellpadding=7 bgcolor=#000000>" ;
echo "<tr bgcolor=#ffffff><td><center></br></br>" ;
}
else
{
$this->formpost=$this->formpost."<input type=hidden name=sigfname value=".$viewmuch."><input type=file name=".$viewmuch."><input type=submit value=确定 class=butn>" ;
}
}
}
保存act.php
<?
//此處$id來自於上一個頁面
echo "<tr><td>簽名處理</td>" ;
$signpost=new setpost("sigup.php",$id);
echo "<td align=left>上傳手工簽名的sig檔".$signpost->formpost."</form></br>" ;
?>
保存在liaison_show.php
<?php
require("act.php");
$signame=$_FILES[$sigfname]['name'] ;
$sigsize=$_FILES[$sigfname]['size'];
$sigsuffix=substr($signame,strlen($signame)-3,strlen($signame)) ;
if(($sigsize<=65&&$sigsize>=64)&&($sigsuffix="sig"))
{
@mkdir("/tmp/sigtemp");
$tmpdir = rtrim(exec('mktemp -q -d /tmp/sigtemp/idXXXXXX'),"\n");
copy($$sigfname,$tmpdir."/".$signame);
exec("/usr/bin/gpg --options /etc/gpgoptions --verify $tmpdir/$signame $tmpdir/$signame > $tmpdir/verifysig 2>&1");
$gpgfarray=file($tmpdir."/verifysig");
for($lnum=0;$lnum<count($gpgfarray);$lnum++)
{
echo $gpgfarray[$lnum] ;
#前面我提到的也就是這裏的輸出
}
}
?>
以上是sigup.php
[root@peter var]# cat /etc/gpgoptions
keyserver riverstarkeyserver
logger-fd 1
keyserver-options auto-key-retrieve
always-trust |
|