clay1 Posted December 25, 2009 Share Posted December 25, 2009 Using fpdf I am trying to create an invoice to send to clients. The products are sold in pricing tiers. I've got it working so it only displays a tier if the quantity is greater than 0 but I end up with a bunch of empty rows in between. Instead of for example: 1 $20 2 $30 3 $40 I am getting 1 $20 2 $30 3 $40 How can I get it so the row is advanced only if something is output? for ($j=0; $j<12; $j++) { $data = Array(); if($pricearray[$j] > 0){ $data[0]['TEXT'] = $pricearray[$j]; $data[1]['TEXT'] = $_POST['select']; $data[1]['TEXT'] .= " " . $pricedescriptionarray[$j]; $data[2]['TEXT'] = "Description"; $data[3]['TEXT'] = "20"; $data[4]['TEXT'] = "100"; } $fsize += 0.5; if ($fsize > 10) $fsize = 5; $rgb_b -= 10; $rgb_g -= 5; $rgb_b -= 20; if ($rgb_b < 150) $rgb_b = 255; if ($rgb_g < 150) $rgb_g = 255; if ($rgb_b < 150) $rgb_b = 255; $pdf->tbDrawData($data); } Quote Link to comment https://forums.phpfreaks.com/topic/186343-creating-an-invoice/ Share on other sites More sharing options...
Catfish Posted December 26, 2009 Share Posted December 26, 2009 I don't know about creating PDFs, but I'll take a wild guess here... $pdf->tbDrawData($data); maybe only allow this line to execute if the the pricing tier you want is met? not sure how your code works exactly, but maybe this would work: for ($j=0; $j<12; $j++) { $data = Array(); if($pricearray[$j] > 0) { $data[0]['TEXT'] = $pricearray[$j]; $data[1]['TEXT'] = $_POST['select']; $data[1]['TEXT'] .= " " . $pricedescriptionarray[$j]; $data[2]['TEXT'] = "Description"; $data[3]['TEXT'] = "20"; $data[4]['TEXT'] = "100"; $fsize += 0.5; if ($fsize > 10) $fsize = 5; $rgb_b -= 10; $rgb_g -= 5; $rgb_b -= 20; if ($rgb_b < 150) $rgb_b = 255; if ($rgb_g < 150) $rgb_g = 255; if ($rgb_b < 150) $rgb_b = 255; $pdf->tbDrawData($data); } } Quote Link to comment https://forums.phpfreaks.com/topic/186343-creating-an-invoice/#findComment-984149 Share on other sites More sharing options...
clay1 Posted December 28, 2009 Author Share Posted December 28, 2009 Doing if ($pricearray[$j] >0){ $pdf->tbDrawData($data); } Appears to have worked thank you! Quote Link to comment https://forums.phpfreaks.com/topic/186343-creating-an-invoice/#findComment-985140 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.