2012-12-28 43 views
0

我正在使用以下內容在pdf上簽名。我的表單上的img,img2,& img3字段包含簽名作爲字符串。只要所有3個字段包含數據/簽名,它就可以完美工作。如果有任何留爲空白,腳本停在如果(isset)條件未按預期停止php

file_put_contents($image, base64_decode($arr[1])); 

當我不籤一個或多個簽名,螢火蟲確認沒有POSTDATA正在發送該字段。所以我一定在php中做錯了什麼。

如果引用字段爲空,那麼下面的代碼不應該停止所有圖像處理嗎?

有沒有不同的方法來實現這個目標?

感謝您的幫助!

require_once('fpdf/fpdf.php'); 
require_once('fpdi/fpdi.php'); 
$pdf = new FPDI('P', 'mm', 'Letter'); 
$pagecount = $pdf->setSourceFile($ffn); 
for($i = 1 ; $i <= $pagecount ; $i++){ 
    $tpl = $pdf->importPage($i); 
    $pdf->AddPage(); 
    $pdf->useTemplate($tpl, 0, 0); 
    if ($i==7) { 
     if(isset($_POST['img'])){ 
      $hash = uniqid(); 
      $arr = explode(',',$_POST['img']); 
      $image = dirname(__FILE__).'/results/sig'.$hash.'.png'; 
      file_put_contents($image, base64_decode($arr[1])); 
      $pdf->Image($image,38,193,-200); 
     }; 
     if(isset($_POST['img2'])){ 
      $hash2 = uniqid(); 
      $arr2 = explode(',',$_POST['img2']); 
      $image2 = dirname(__FILE__).'/results/sig'.$hash2.'.png'; 
      file_put_contents($image2, base64_decode($arr2[1])); 
      $pdf->Image($image2,38,217,-200); 
     }; 
     if(isset($_POST['img3'])){ 
      $hash3 = uniqid(); 
      $arr3 = explode(',',$_POST['img3']); 
      $image3 = dirname(__FILE__).'/results/sig'.$hash3.'.png'; 
      file_put_contents($image3, base64_decode($arr3[1])); 
      $pdf->Image($image3,38,241,-200); 
     }; 
    }; 
    if ($i==8) { 
     $locmap = $_POST['_fid_209']; 
     $pdf->Image('http://maps.googleapis.com/maps/api/staticmap?markers=color:blue%7Clabel:I%7C'.$locmap.'&zoom=14&size=800x800&sensor=false',63,90,90,0,'PNG'); 
    }; 
} 
$pdf->Output($ffn, 'F'); 
+0

你似乎已經回答了你的問題,你的問題:) **應不低於代碼停止所有的圖像處理,如果引用的領域是'empty' ?**使用'empty()'功能 –

+0

怎麼樣?爲了清楚起見,即使img字段爲空,腳本也正在移動代碼(並破壞)。如果(isset)發生,如果字段爲空,我需要防止每行下面的5行。 – user1911141

+5

不使用'isset',使用'if(!empty())'它的文本字段,它總是會被設置在後 –

回答

1
if(isset($_POST['img']) && !empty($_POST['img'])) { 

....

+0

謝謝mjayt。我用if(!empty($ _ POST ['img'])){就像上面的Randy所建議的那樣。任何理由也包括isset?我會把這個標記爲答案。 – user1911141