Bifter Posted July 14, 2008 Share Posted July 14, 2008 Hi All, I have created a script that creates a quote based on user inputs; however when emailed using an email script all the function reset to the 1st IF command within th main script....the tool is here - http://www.flipsolutions.co.uk/partner_central_quoting_tool.php Main Script: <?php /* Avaya - From Form*/ $LinesAnalogue = $_POST['LinesAnalogue']; $LinesISDN2 = $_POST['LinesISDN2']; $LinesISDN30 = $_POST['LinesISDN30']; $DigitalExt = $_POST['DigitalExt']; $AnalogueExt = $_POST['AnalogueExt']; $Voicemail = $_POST['Voicemail']; $BasicHand = $_POST['BasicHand']; $GeneralHand = $_POST['GeneralHand']; $ExecHand = $_POST['ExecHand']; /* Main Unit */ $MainUnit = array( array('Unit' => 'Avaya', 'Price' => '406'), array('Unit' => 'Cisco', 'Price' => '1500'), array('Unit' => 'Samsung', 'Price' => '995') ); /* Line Cards */ $LineCard = array( array('Card' => 'Analogue Card/s', 'Price' => '232'), array('Card' => 'ISDN2e Card/s', 'Price' => '275'), array('Card' => 'ISDN30e Card/s', 'Price' => '530'), array('Card' => 'Cisco ISDN2e Card/s', 'Price' => '200'), array('Card' => 'Cisco ISDN30e Card/s', 'Price' => '600'), array('Card' => 'Samsung Analogue Card/s', 'Price' => '345'), array('Card' => 'Samsung ISDN2e Card/s', 'Price' => '395'), array('Card' => 'Samsund ISDN30e Card/s', 'Price' => '530') ); /* Extension Cards */ $ExtCard = array( array('Card' => 'Digital Extension Card/s', 'Price' => '319'), array('Card' => 'Analogue Extension Card/s', 'Price' => '145'), array('Card' => 'Cisco Switch', 'Price' => '1200'), array('Card' => 'Samsung Digital Extension Card/s', 'Price' => '295'), array('Card' => 'Samsung Analogue Extension Card/s', 'Price' => '295'), ); /* Voicemail */ $VoicemailPrice = array( array('Card' => 'Avaya', 'Price' => '500'), array('Card' => 'Cisco', 'Price' => '600'), array('Card' => 'Samsung', 'Price' => '100'), ); /* Handsets */ $Phones = array( array('Phone' => 'Basic Model/s', 'Price' => '72'), array('Phone' => 'General Model/s', 'Price' => '152'), array('Phone' => 'Executive Model/s', 'Price' => '218'), array('Phone' => 'Cisco Basic Model/s', 'Price' => '135'), array('Phone' => 'Cisco General Model/s', 'Price' => '192'), array('Phone' => 'Cisco Executive Model/s', 'Price' => '297'), array('Phone' => 'Samsung Basic Model/s', 'Price' => '100'), array('Phone' => 'Samsung General Model/s', 'Price' => '150'), array('Phone' => 'Samsung Executive Model/s', 'Price' => '230') ); /* Extras */ $Instal = array( array('Phone' => 'Avaya', 'Price' => '400'), array('Phone' => 'Cisco', 'Price' => '1200'), array('Phone' => 'Samsung', 'Price' => '400') ); $Train = array( array('Phone' => 'Avaya', 'Price' => '400'), array('Phone' => 'Cisco', 'Price' => '500'), array('Phone' => 'Samsung', 'Price' => '400') ); /*----------*/ /* Avaya */ /*----------*/ /* Main Unit */ function MainUnit ($MainUnit) { global $MainUnit; return $MainUnit['0']['Price'] . "<br>"; } /* Analogue Card */ function AnaLineTotal ($LineCard,$LinesAnalogue) { global $LinesAnalogue; global $LineCard; if ($LinesAnalogue <= 0 ) { return "Not Required" . "<br>"; } elseif ($LinesAnalogue <= 5 ) { return $LineCard['0']['Price'] . "<br>"; } elseif ($LinesAnalogue <= 8 ) { return $LineCard['0']['Price'] * 2 . "<br>"; } elseif ($LinesAnalogue <= 12 ) { return $LineCard['0']['Price'] * 3 . "<br>"; } elseif ($LinesAnalogue >= 13 ) { return "Please Call" . "<br>"; } } /* Number Required */ function AnaNumReq ($LinesAnalogue) { global $LinesAnalogue; if ($LinesAnalogue <= 0 ) { return "Not Required" . "<br>"; } elseif ($LinesAnalogue <= 5 ) { return "1" . "<br>"; } elseif ($LinesAnalogue <= 8 ) { return "2" . "<br>"; } elseif ($LinesAnalogue <= 12 ) { return "3" . "<br>"; } elseif ($LinesAnalogue >= 13 ) { return "Please Call" . "<br>"; } } /* ISDN2 Card */ function ISDN2LineTotal ($LineCard,$LinesISDN2) { global $LinesISDN2; global $LineCard; if ($LinesISDN2 <= 0 ) { return "Not Required" . "<br>"; } elseif ($LinesISDN2 <= 8 ) { return $LineCard['1']['Price'] . "<br>"; } elseif ($LinesISDN2 <= 16 ) { return $LineCard['1']['Price'] * 2 . "<br>"; } elseif ($LinesISDN2 >= 17 ) { return "Please Call" . "<br>"; } } /* Number Required */ function ISDN2NumReq ($LinesISDN2) { global $LinesISDN2; if ($LinesISDN2 <= 0 ) { return "Not Required" . "<br>"; } elseif ($LinesISDN2 <= 8 ) { return "1" . "<br>"; } elseif ($LinesISDN2 <= 16 ) { return "2" . "<br>"; } elseif ($LinesISDN2 >= 17 ) { return "Please Call" . "<br>"; } } /* ISDN30 Card */ function ISDN30LineTotal ($LineCard,$LinesISDN30) { global $LinesISDN30; global $LineCard; if ($LinesISDN30 <= 0 ) { return "Not Required" . "<br>"; } elseif ($LinesISDN30 <= 30 ) { return $LineCard['2']['Price'] . "<br>"; } elseif ($LinesISDN30 <= 60 ) { return $LineCard['2']['Price'] * 2 . "<br>"; } elseif ($LinesISDN30 >= 61 ) { return "Please Call" . "<br>"; } } /* Number Required */ function ISDN30NumReq ($LinesISDN30) { global $LinesISDN30; if ($LinesISDN30 <= 0 ) { return "Not Required" . "<br>"; } elseif ($LinesISDN30 <= 30 ) { return "1" . "<br>"; } elseif ($LinesISDN30 <= 60 ) { return "2" . "<br>"; } elseif ($LinesISDN30 >= 61 ) { return "Please Call" . "<br>"; } } /* Total Number of Lines */ function NumLines ($LinesAnalogue,$LinesISDN2,$LinesISDN30) { global $LinesAnalogue; global $LinesISDN2; global $LinesISDN30; return $LinesAnalogue + $LinesISDN2 + $LinesISDN30; } /* Digital Extension Card */ function DigExtLineTotal ($ExtCard,$DigitalExt) { global $DigitalExt; global $ExtCard; if ($DigitalExt <= 0 ) { return "Not Required" . "<br>"; } elseif ($DigitalExt <= 8 ) { return $ExtCard['0']['Price'] . "<br>"; } elseif ($DigitalExt <= 16 ) { return $ExtCard['0']['Price'] * 2 . "<br>"; } elseif ($DigitalExt <= 24 ) { return $ExtCard['0']['Price'] * 3 . "<br>"; } elseif ($DigitalExt >= 25 ) { return "Please Call" . "<br>"; } } /* Number Required */ function DigExtNumReq ($DigitalExt) { global $DigitalExt; if ($DigitalExt <= 0 ) { return "Not Required" . "<br>"; } elseif ($DigitalExt <= 8 ) { return "1" . "<br>"; } elseif ($DigitalExt <= 16 ) { return "2" . "<br>"; } elseif ($DigitalExt <= 24 ) { return "3" . "<br>"; } elseif ($DigitalExt >= 25 ) { return "Please Call" . "<br>"; } } /* Analogue Extension Card */ function AnaExtLineTotal ($ExtCard,$AnalogueExt) { global $AnalogueExt; global $ExtCard; if ($AnalogueExt <= 0 ) { return "Not Required" . "<br>"; } elseif ($AnalogueExt <= 4 ) { return $ExtCard['1']['Price'] . "<br>"; } elseif ($AnalogueExt <= 8 ) { return $ExtCard['1']['Price'] * 2 . "<br>"; } elseif ($AnalogueExt <= 12 ) { return $ExtCard['1']['Price'] * 3 . "<br>"; } elseif ($AnalogueExt >= 13 ) { return "Please Call" . "<br>"; } } /* Number Required */ function AnaExtNumReq ($AnalogueExt) { global $AnalogueExt; if ($AnalogueExt <= 0 ) { return "Not Required" . "<br>"; } elseif ($AnalogueExt <= 4 ) { return "1" . "<br>"; } elseif ($AnalogueExt <= 8 ) { return "2" . "<br>"; } elseif ($AnalogueExt <= 12 ) { return "3" . "<br>"; } elseif ($AnalogueExt >= 13 ) { return "Please Call" . "<br>"; } } /* Total Extensions */ function TotalExtension ($DigitalExt,$AnalogueExt) { global $DigitalExt; global $AnalogueExt; return $DigitalExt + $AnalogueExt; } /* echo "Total Number of Extensions : "; echo TotalExtension ( ) . "<br>"; */ /* Voicemail */ function Voicemail ($VoicemailPrice,$Voicemail) { global $Voicemail; global $VoicemailPrice; if ($Voicemail == 1 ) { return $VoicemailPrice['0']['Price'] . "<br>"; } else return "Not Required" . "<br>"; } /* Basic Phone */ function BasPhoneLineTotal ($Phones,$BasicHand) { global $BasicHand; global $Phones; if ($BasicHand <= 0 ) { return "Not Required" . "<br>"; } else return $BasicHand * $Phones['0']['Price'] . "<br>"; } /* Basic Phone Number*/ function BasPhoneLineNum ($Phones,$BasicHand) { global $BasicHand; global $Phones; if ($BasicHand <= 0 ) { return "Not Required" . "<br>"; } else return $BasicHand . "<br>"; } /* Mid Range Phone */ function MidPhoneLineTotal ($Phones,$GeneralHand) { global $GeneralHand; global $Phones; if ($GeneralHand <= 0 ) { return "Not Required" . "<br>"; } else return $GeneralHand * $Phones['1']['Price'] . "<br>"; } /* Mid Range Phone Number*/ function MidPhoneLineNum ($Phones,$GeneralHand) { global $GeneralHand; global $Phones; if ($GeneralHand <= 0 ) { return "Not Required" . "<br>"; } else return $GeneralHand . "<br>"; } /* Executive Phone */ function ExecPhoneLineTotal ($Phones,$ExecHand) { global $ExecHand; global $Phones; if ($ExecHand <= 0 ) { return "Not Required" . "<br>"; } else return $ExecHand * $Phones['2']['Price'] . "<br>"; } /* Executive Phone Number*/ function ExecPhoneLineNum ($Phones,$ExecHand) { global $ExecHand; global $Phones; if ($ExecHand <= 0 ) { return "Not Required" . "<br>"; } else return $ExecHand . "<br>"; } /* Total Number of Phones */ function NumPhones ($BasicHand,$GeneralHand,$ExecHand) { global $BasicHand; global $GeneralHand; global $ExecHand; return $BasicHand + $GeneralHand + $ExecHand; } /* Installation */ function InstallLineTotal ($Instal,$TotalExt) { Global $Instal; $TotalExt = TotalExtension ( ); if ($TotalExt <= 0 ) { return "Not Required" . "<br>"; } elseif ($TotalExt <= 10 ) { return $Instal['0']['Price'] . "<br>"; } elseif ($TotalExt <= 20 ) { return ($Instal['0']['Price'] / 2) * 3 . "<br>"; } elseif ($TotalExt <= 40 ) { return $Instal['0']['Price'] * 2 . "<br>"; } elseif ($TotalExt >= 41 ) { return "Subject to Survey" . "<br>"; } } /* Training */ function TrainLineTotal ($Train,$TotalExt) { Global $Train; $TotalExt = TotalExtension ( ); if ($TotalExt <= 0 ) { return "Not Required" . "<br>"; } elseif ($TotalExt <= 20 ) { return $Train['0']['Price'] . "<br>"; } elseif ($TotalExt <= 30 ) { return ($Train['0']['Price'] / 2) * 3 . "<br>"; } elseif ($TotalExt >= 31 ) { return "Subject to Survey" . "<br>"; } } /* Phone Total */ function PhoneTotal ( ) { return BasPhoneLineTotal () + MidPhoneLineTotal () + ExecPhoneLineTotal (); } /* *---------------------------------- * Avaya Hardware Total *---------------------------------- */ function HardTotal ( ) { return Total ( ) - (InstallLineTotal () + TrainLineTotal ()) ; } /* *---------------------------------- * Running Total *---------------------------------- */ function Total ( ) { return MainUnit () + AnaLineTotal () + ISDN2LineTotal () + ISDN30LineTotal () + AnaExtLineTotal () + DigExtLineTotal () + Voicemail () + PhoneTotal () + InstallLineTotal () + TrainLineTotal (); } /* *---------------------------------- * Some Code Removed *---------------------------------- */ function html () { return "<html> <body> <table width=\"57%\" align=\"center\" cellpadding=5 class=bordered> <tr> <th><div align=\"center\"><strong>Total Lines Required </strong></div></th> <th><div align=\"center\"><strong>Total Extensions Required </strong></div></th> <th><div align=\"center\"><strong>Total Phones Required </strong></div></th> </tr> <tr> <td><div align=\"center\">". NumLines () ."</div></td> <td> <div align=\"center\">". TotalExtension () ."</div></td> <td><div align=\"center\">". NumPhones () ."</div></td> </tr> </table> <br /> <table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\"> <tr> <td width=\"33%\"><table width=\"99%\" align=\"left\" cellpadding=5 class=bordered> <tr> <th colspan=4><img src=\"http://www.flipsolutions.co.uk/images/quoting/avaya.png\" width=\"120\" height=\"49\"></th></tr> <tr> <th width=\"34%\"><div align=\"center\"><strong>Part </strong></div></th> <th width=\"18%\"><div align=\"center\"><strong>Unit Price </strong></div></th> <th width=\"24%\"><div align=\"center\"><strong>No. Required </strong></div></th> <th width=\"24%\"><div align=\"center\"><strong>Line Total </strong></div></th> </tr> <tr> <td><div align=\"center\">Main Unit </div></td> <td><div align=\"center\">£406.00</div></td> <td><div align=\"center\">1</div></td> <td><div align=\"center\">£". MainUnit () ."</div></td> </tr> <tr> <td><div align=\"center\">Analogue Card </div></td> <td><div align=\"center\">£232.00</div></td> <td><div align=\"center\">". AnaNumReq () ."</div></td> <td><div align=\"center\">£". AnaLineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\">ISDN2e Card </div></td> <td><div align=\"center\">£275.00</div></td> <td><div align=\"center\">". ISDN2NumReq () ."</div></td> <td><div align=\"center\">£". ISDN2LineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\">ISDN30e Card </div></td> <td><div align=\"center\">£530.00</div></td> <td><div align=\"center\">". ISDN30NumReq () ."</div></td> <td><div align=\"center\">£". ISDN30LineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\">Digital Extension Card </div></td> <td><div align=\"center\">£319.00</div></td> <td><div align=\"center\">". DigExtNumReq () ."</div></td> <td><div align=\"center\">£". DigExtLineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\">Analogue Extension Card </div></td> <td><div align=\"center\">£145.00</div></td> <td><div align=\"center\">". AnaExtNumReq () ."</div></td> <td><div align=\"center\">£". AnaExtLineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\">Voicemail</div></td> <td><div align=\"center\">£500.00</div></td> <td><div align=\"center\">1</div></td> <td><div align=\"center\">". Voicemail () ."</div></td> </tr> <tr> <td><div align=\"center\">Basic Handset </div></td> <td><div align=\"center\">£72.00</div></td> <td><div align=\"center\">". BasPhoneLineNum () ."</div></td> <td><div align=\"center\">£". BasPhoneLineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\"><div class=\"gallerycontainer\"> <a class=\"thumbnail\" href=\"#thumb\"><img src=\"http://www.flipsolutions.co.uk/images/quoting/5402.png\" width=\"98px\" height=\"81px\" border=\"0\" /><span><img src=\"http://www.flipsolutions.co.uk/images/quoting/5402_large.png\" /><br />Avaya 5402 Terminal</span></a> </div></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> </tr> <tr> <td><div align=\"center\">Mid Range Handset </div></td> <td><div align=\"center\">£152.00</div></td> <td><div align=\"center\">". MidPhoneLineNum () ."</div></td> <td><div align=\"center\">£". MidPhoneLineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\"><div class=\"gallerycontainer\"> <a class=\"thumbnail\" href=\"#thumb\"><img src=\"http://www.flipsolutions.co.uk/images/quoting/5410.png\" width=\"98px\" height=\"81px\" border=\"0\" /><span><img src=\"http://www.flipsolutions.co.uk/images/quoting/5410_large.png\" /><br />Avaya 5410 Terminal</span></a> </div></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> </tr> <tr> <td><div align=\"center\">Executive Handset </div></td> <td><div align=\"center\">£218.00</div></td> <td><div align=\"center\">". ExecPhoneLineNum () ."</div></td> <td><div align=\"center\">£". ExecPhoneLineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\"><div class=\"gallerycontainer\"> <a class=\"thumbnail\" href=\"#thumb\"><img src=\"http://www.flipsolutions.co.uk/images/quoting/5420.png\" width=\"98px\" height=\"81px\" border=\"0\" /><span><img src=\"http://www.flipsolutions.co.uk/images/quoting/5420_large.png\" /><br />Avaya 5420 Terminal</span></a> </div></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> </tr> <tr> <td><div align=\"center\"><strong>Hardware Total </strong></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> <td><b><div align=\"center\">£". HardTotal () ."</div></td> </tr> <tr> <td><div align=\"center\">Installation</div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\">£". InstallLineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\">Training</div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\">£". TrainLineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> <td><b><div align=\"center\">Total</div></b></td> <td><b><div align=\"center\">£". Total () ."</div></b></td> </tr> </table></td> <td width=\"33%\"><table width=\"99%\" align=\"left\" cellpadding=5 class=bordered> <tr> <th colspan=4><img src=\"http://www.flipsolutions.co.uk/images/quoting/cisco.png\" width=\"89\" height=\"49\"></th></tr> <tr> <th width=\"34%\"><div align=\"center\"><strong>Part </strong></div></th> <th width=\"18%\"><div align=\"center\"><strong>Unit Price </strong></div></th> <th width=\"24%\"><div align=\"center\"><strong>No. Required </strong></div></th> <th width=\"24%\"><div align=\"center\"><strong>Line Total </strong></div></th> </tr> <tr> <td><div align=\"center\">Main Unit </div></td> <td><div align=\"center\">£1,500.00</div></td> <td><div align=\"center\">1</div></td> <td><div align=\"center\">£". CiscoMainUnit () ."</div></td> </tr> <tr> <td><div align=\"center\">ISDN2e Card </div></td> <td><div align=\"center\">£200.00</div></td> <td><div align=\"center\">". CiscoISDN2NumReq () ."</div></td> <td><div align=\"center\">£". CiscoISDN2LineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\">ISDN30e Card </div></td> <td><div align=\"center\">£600.00</div></td> <td><div align=\"center\">". CiscoISDN30NumReq () ."</div></td> <td><div align=\"center\">£". CiscoISDN30LineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\">Switch</div></td> <td><div align=\"center\">£1,200.00</div></td> <td><div align=\"center\">". CiscoDigExtNumReq () ."</div></td> <td><div align=\"center\">£". CiscoDigExtLineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\">Voicemail</div></td> <td><div align=\"center\">£600.00</div></td> <td><div align=\"center\">1</div></td> <td><div align=\"center\">". CiscoVoicemail () ."</div></td> </tr> <tr> <td><div align=\"center\">Basic Handset </div></td> <td><div align=\"center\">£135.00</div></td> <td><div align=\"center\">". BasPhoneLineNum () ."</div></td> <td><div align=\"center\">£". CiscoBasPhoneLineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\"><div class=\"gallerycontainer\"> <a class=\"thumbnail\" href=\"#thumb\"><img src=\"http://www.flipsolutions.co.uk/images/quoting/7906.png\" width=\"98px\" height=\"81px\" border=\"0\" /><span><img src=\"http://www.flipsolutions.co.uk/images/quoting/7906_large.png\" /><br />Cisco 7906G Handset</span></a> </div></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> </tr> <tr> <td><div align=\"center\">Mid Range Handset </div></td> <td><div align=\"center\">£192.00</div></td> <td><div align=\"center\">". MidPhoneLineNum () ."</div></td> <td><div align=\"center\">£". CiscoMidPhoneLineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\"><div class=\"gallerycontainer\"> <a class=\"thumbnail\" href=\"#thumb\"><img src=\"http://www.flipsolutions.co.uk/images/quoting/7941.png\" width=\"98px\" height=\"81px\" border=\"0\" /><span><img src=\"http://www.flipsolutions.co.uk/images/quoting/7941_large.png\" /><br />Cisco 7941G Handset</span></a> </div></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> </tr> <tr> <td><div align=\"center\">Executive Handset </div></td> <td><div align=\"center\">£297.00</div></td> <td><div align=\"center\">". ExecPhoneLineNum () ."</div></td> <td><div align=\"center\">£". CiscoExecPhoneLineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\"><div class=\"gallerycontainer\"> <a class=\"thumbnail\" href=\"#thumb\"><img src=\"http://www.flipsolutions.co.uk/images/quoting/7970.png\" width=\"98px\" height=\"81px\" border=\"0\" /><span><img src=\"http://www.flipsolutions.co.uk/images/quoting/7970_large.png\" /><br />Cisco 7970G Handset</span></a> </div></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> </tr> <tr> <td><div align=\"center\"><strong>Hardware Total </strong></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> <td><b><div align=\"center\">£". CiscoHardTotal () ."</div></td> </tr> <tr> <td><div align=\"center\">Installation</div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\">£". CiscoInstallLineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\">Training</div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\">£". CiscoTrainLineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> <td><b><div align=\"center\">Total</div></b></td> <td><b><div align=\"center\">£". CiscoTotal () ."</div></b></td> </tr> </table></td> <td width=\"33%\"><table width=\"99%\" align=\"right\" cellpadding=5 class=bordered> <tr> <th colspan=4><img src=\"http://www.flipsolutions.co.uk/images/quoting/samsung.png\" width=\"114\" height=\"49\"></th></tr> <tr> <th width=\"34%\"><div align=\"center\"><strong>Part </strong></div></th> <th width=\"18%\"><div align=\"center\"><strong>Unit Price </strong></div></th> <th width=\"24%\"><div align=\"center\"><strong>No. Required </strong></div></th> <th width=\"24%\"><div align=\"center\"><strong>Line Total </strong></div></th> </tr> <tr> <td><div align=\"center\">Main Unit </div></td> <td><div align=\"center\">£995.00</div></td> <td><div align=\"center\">1</div></td> <td><div align=\"center\">£". SamMainUnit () ."</div></td> </tr> <tr> <td><div align=\"center\">Analogue Card </div></td> <td><div align=\"center\">£345.00</div></td> <td><div align=\"center\">". SamAnaNumReq () ."</div></td> <td><div align=\"center\">£". SamAnaLineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\">ISDN2e Card </div></td> <td><div align=\"center\">£395.00</div></td> <td><div align=\"center\">". SamISDN2NumReq () ."</div></td> <td><div align=\"center\">£". SamISDN2LineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\">ISDN30e Card </div></td> <td><div align=\"center\">£530.00</div></td> <td><div align=\"center\">". SamISDN30NumReq () ."</div></td> <td><div align=\"center\">£". SamISDN30LineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\">Digital Extension Card </div></td> <td><div align=\"center\">£295.00</div></td> <td><div align=\"center\">". SamDigExtNumReq () ."</div></td> <td><div align=\"center\">£". SamDigExtLineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\">Analogue Extension Card </div></td> <td><div align=\"center\">£295.00</div></td> <td><div align=\"center\">". SamAnaExtNumReq () ."</div></td> <td><div align=\"center\">£". SamAnaExtLineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\">Voicemail</div></td> <td><div align=\"center\">£1,000.00</div></td> <td><div align=\"center\">1</div></td> <td><div align=\"center\">". SamVoicemail () ."</div></td> </tr> <tr> <td><div align=\"center\">Basic Handset </div></td> <td><div align=\"center\">£100.00</div></td> <td><div align=\"center\">". BasPhoneLineNum () ."</div></td> <td><div align=\"center\">£". SamBasPhoneLineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\"><div class=\"gallerycontainer\"> <a class=\"thumbnail\" href=\"#thumb\"><img src=\"http://www.flipsolutions.co.uk/images/quoting/5007s.png\" width=\"98px\" height=\"81px\" border=\"0\" /><span><img src=\"http://www.flipsolutions.co.uk/images/quoting/5007s_large.png\" /><br />Samsung DS-5007s Handset</span></a> </div></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> </tr> <tr> <td><div align=\"center\">Mid Range Handset </div></td> <td><div align=\"center\">£150.00</div></td> <td><div align=\"center\">". MidPhoneLineNum () ."</div></td> <td><div align=\"center\">£". SamMidPhoneLineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\"><div class=\"gallerycontainer\"> <a class=\"thumbnail\" href=\"#thumb\"><img src=\"http://www.flipsolutions.co.uk/images/quoting/5014s.png\" width=\"98px\" height=\"81px\" border=\"0\" /><span><img src=\"http://www.flipsolutions.co.uk/images/quoting/5014s_large.png\" /><br />Samsung DS-5014s Handset</span></a> </div></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> </tr> <tr> <td><div align=\"center\">Executive Handset </div></td> <td><div align=\"center\">£230.00</div></td> <td><div align=\"center\">". ExecPhoneLineNum () ."</div></td> <td><div align=\"center\">£". SamExecPhoneLineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\"><div class=\"gallerycontainer\"> <a class=\"thumbnail\" href=\"#thumb\"><img src=\"http://www.flipsolutions.co.uk/images/quoting/5038s.png\" width=\"98px\" height=\"81px\" border=\"0\" /><span><img src=\"http://www.flipsolutions.co.uk/images/quoting/5038s_large.png\" /><br />Samsung DS-5038s Handset</span></a> </div></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> </tr> <tr> <td><div align=\"center\"><strong>Hardware Total </strong></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> <td><b><div align=\"center\">£". SamHardTotal () ."</div></td> </tr> <tr> <td><div align=\"center\">Installation</div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\">£". SamInstallLineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\">Training</div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> <td><div align=\"center\">£". SamTrainLineTotal () ."</div></td> </tr> <tr> <td><div align=\"center\"></div></td> <td><div align=\"center\"></div></td> <td><b><div align=\"center\">Total</div></b></td> <td><b><div align=\"center\">£". SamTotal () ."</div></b></td> </tr> </table></td> </tr> </table> <p> </p> </table> </body> </html>"; } echo html (); ?> Email Script <?php require('process-new.php'); //define the receiver of the email $to = $_POST['Email']; //define the subject of the email $subject = 'Online Quote from Flip Solutions'; //create a boundary string. It must be unique //so we use the MD5 algorithm to generate a random hash $random_hash = md5(date('r', time())); //define the headers we want passed. Note that they are separated with \r\n $headers = "From: [email protected]\r\nReply-To: [email protected]"; //add boundary string and mime type specification $headers .= "\r\nContent-Type: multipart/alternative; boundary=\"PHP-alt-".$random_hash."\""; //define the body of the message. ?> --PHP-alt-<?php echo $random_hash; ?> Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit This email requires HTML to be turned on, please enable this and resend the email! --PHP-alt-<?php echo $random_hash; ?> Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: 7bit <?php echo html($LineCard,$ExtCard); ?> --PHP-alt-<?php echo $random_hash; ?>-- <? //copy current buffer contents into $message variable and delete current output buffer $message = ob_get_clean(); //send the email $mail_sent = @mail( $to, $subject, $message, $headers ); //if the message is sent successfully print "Mail sent". Otherwise print "Mail failed" echo $mail_sent ? "Mail sent" : "Mail failed"; ?> Link to comment https://forums.phpfreaks.com/topic/114675-not-processing-function-outputs-when-emailed/ Share on other sites More sharing options...
trq Posted July 14, 2008 Share Posted July 14, 2008 Sorry but you need to narrow your problem down to what is relevant. I for one am not going to sort through all that. Link to comment https://forums.phpfreaks.com/topic/114675-not-processing-function-outputs-when-emailed/#findComment-589712 Share on other sites More sharing options...
Bifter Posted July 14, 2008 Author Share Posted July 14, 2008 Ok fair point....I will narrow this down: All the following are from the main script: Inputs from user <?php $LinesAnalogue = $_POST['LinesAnalogue']; $LinesISDN2 = $_POST['LinesISDN2']; $LinesISDN30 = $_POST['LinesISDN30']; $DigitalExt = $_POST['DigitalExt']; $AnalogueExt = $_POST['AnalogueExt']; $Voicemail = $_POST['Voicemail']; $BasicHand = $_POST['BasicHand']; $GeneralHand = $_POST['GeneralHand']; $ExecHand = $_POST['ExecHand']; <? Arrays for the prices <?php $MainUnit = array( array('Unit' => 'Avaya', 'Price' => '406'), array('Unit' => 'Cisco', 'Price' => '1500'), array('Unit' => 'Samsung', 'Price' => '995') ); /* Line Cards */ $LineCard = array( array('Card' => 'Analogue Card/s', 'Price' => '232'), array('Card' => 'ISDN2e Card/s', 'Price' => '275'), array('Card' => 'ISDN30e Card/s', 'Price' => '530'), array('Card' => 'Cisco ISDN2e Card/s', 'Price' => '200'), array('Card' => 'Cisco ISDN30e Card/s', 'Price' => '600'), array('Card' => 'Samsung Analogue Card/s', 'Price' => '345'), array('Card' => 'Samsung ISDN2e Card/s', 'Price' => '395'), array('Card' => 'Samsund ISDN30e Card/s', 'Price' => '530') ); <? Functions #1 - Calcs. the price for the Main Unit (This works when emailed): <?php /* Main Unit */ function MainUnit ($MainUnit) { global $MainUnit; return $MainUnit['0']['Price'] . "<br>"; } <? Functions #2 - Calcs. the price for the Analogue Line card based on the user input(This does NOT work when emailed): <?php /* Analogue Card */ function AnaLineTotal ($LineCard,$LinesAnalogue) { global $LinesAnalogue; global $LineCard; if ($LinesAnalogue <= 0 ) { return "Not Required" . "<br>"; } elseif ($LinesAnalogue <= 5 ) { return $LineCard['0']['Price'] . "<br>"; } elseif ($LinesAnalogue <= 8 ) { return $LineCard['0']['Price'] * 2 . "<br>"; } elseif ($LinesAnalogue <= 12 ) { return $LineCard['0']['Price'] * 3 . "<br>"; } elseif ($LinesAnalogue >= 13 ) { return "Please Call" . "<br>"; } } <? Html Output: <?php function html () { return "<html> <body> <table> <tr> <td><div align=\"center\">Main Unit </div></td> <td><div align=\"center\">£406.00</div></td> <td><div align=\"center\">1</div></td> <td><div align=\"center\">£". MainUnit () ."</div></td> </tr> <tr> <td><div align=\"center\">Analogue Card </div></td> <td><div align=\"center\">£232.00</div></td> <td><div align=\"center\">". AnaNumReq () ."</div></td> <td><div align=\"center\">£". AnaLineTotal () ."</div></td> </tr> <tr> </table> </body> </html> echo html (); <? Email Script: <?php require('process-new.php'); //define the receiver of the email $to = $_POST['Email']; //define the subject of the email $subject = 'Online Quote from Flip Solutions'; //create a boundary string. It must be unique //so we use the MD5 algorithm to generate a random hash $random_hash = md5(date('r', time())); //define the headers we want passed. Note that they are separated with \r\n $headers = "From: [email protected]\r\nReply-To: [email protected]"; //add boundary string and mime type specification $headers .= "\r\nContent-Type: multipart/alternative; boundary=\"PHP-alt-".$random_hash."\""; //define the body of the message. ?> --PHP-alt-<?php echo $random_hash; ?> Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit This email requires HTML to be turned on, please enable this and resend the email! --PHP-alt-<?php echo $random_hash; ?> Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: 7bit <?php echo html($LineCard,$ExtCard); ?> --PHP-alt-<?php echo $random_hash; ?>-- <? //copy current buffer contents into $message variable and delete current output buffer $message = ob_get_clean(); //send the email $mail_sent = @mail( $to, $subject, $message, $headers ); //if the message is sent successfully print "Mail sent". Otherwise print "Mail failed" echo $mail_sent ? "Mail sent" : "Mail failed"; ?> Link to comment https://forums.phpfreaks.com/topic/114675-not-processing-function-outputs-when-emailed/#findComment-589727 Share on other sites More sharing options...
Bifter Posted July 15, 2008 Author Share Posted July 15, 2008 Please help! Link to comment https://forums.phpfreaks.com/topic/114675-not-processing-function-outputs-when-emailed/#findComment-590860 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.