newphpcoder Posted April 24, 2012 Share Posted April 24, 2012 Hi.. I have a function for convert to dozen. here is my code: <?php error_reporting(0); date_default_timezone_set("Asia/Singapore"); //set the time zone $con = mysql_connect('localhost', 'root',''); if (!$con) { echo 'failed'; die();} mysql_select_db("mes", $con);$Date_Shelve =date('Y-m-d H:i:s'); ?><html><head><title>Job Order</title><link rel="stylesheet" type="text/css" href="kanban.css" /></head><body> <div id="ddcolortabs"><ul><li id="current"> <a href="SalesOrder.php" title="Sales Order"><span>Order Management</span></a></li><li> <a href="ParameterSettings.php" title="Parameter Settings"><span>Parameter Settings</span></a></li><li style="margin-left: 1px"><a href="kanban_report.php" title="WIP Report"><span>WIP Report</span></a></li><li><a href="fsn.php" title="Finished Stock Note"><span>WMS FG</span></a></li><li><a href="ReceivingMaterials.php" title="WMS RM"><span>WMS RM</span></a></li> </ul></div><div id="ddcolortabs1"><ul><li><a href="SalesOrder.php" title="Sales Order"><span>Sales Order</span></a></li><li id="current"><a href="JobOrder.php" title="Job Order"><span>Job Order</span></a></li> </ul></div> <div id="SR_date"> <input type="hidden" name="Date_Shelve" id="Date_Shelve" value="<?php echo $Date_Shelve; ?>" size="16" readonly="readonly" style="border: none;"> </div> <?php//----approve button-----//$Approved = isset($_POST['priority']);if ($Approved){ $PO_No = $_POST['PO_No']; $ETD = $_POST['ETD']; $SKUCode = $_POST['SKUCode']; $Description = $_POST['Description']; $POReq = $_POST['POReq']; $priority = $_POST['priority']; $sql = "SELECT SKUCode, Materials, Comp, Qty FROM bom WHERE SKUCode = '$SKUCode'"; $res = mysql_query($sql, $con); $row = mysql_fetch_assoc($res); $Materials = $row['Materials']; $Qty = $row['Qty']; $Comp = $row['Comp']; $ReqQty = $Qty * $POReq; $sql = "UPDATE bom SET ReqQty = '$ReqQty' WHERE SKUCode = '$SKUCode' AND Materials = '$Materials'";$resReqQty = mysql_query($sql, $con); $sql = "SELECT SUM(WEIGHING) AS WEIGHING_TOTAL, "; $sql .= "SUM(COMPOUNDING) AS COMPOUNDING_TOTAL, "; $sql .= "SUM(EXTRUSION) AS EXTRUSION_TOTAL, "; $sql .= "SUM(FORMING) AS FORMING_TOTAL, "; $sql .= "SUM(DIPPING) AS DIPPING_TOTAL, "; $sql .= "SUM(MOULDING) AS MOULDING_TOTAL "; $sql .= "FROM MES_REPORT_OPEN WHERE SUBSTRING(LOT_CODE, 9) = '$Comp'"; $result = mysql_query($sql, $con); $weighingTotal = mysql_result($result, 0, "WEIGHING_TOTAL"); $weighingTotal = convertToDozen($weighingTotal, $Comp); $weighingAccum = $weighingAccum + $weighingTotal; $compoundingTotal = mysql_result($result, 0, "COMPOUNDING_TOTAL"); $compoundingTotal = convertToDozen($compoundingTotal, $Comp); $compoundingAccum = $compoundingAccum + $compoundingTotal; $extrusionTotal = mysql_result($result, 0, "EXTRUSION_TOTAL"); $extrusionTotal = convertToDozen($extrusionTotal, $Comp); $extrusionAccum = $extrusionAccum + $extrusionTotal; $formingTotal = mysql_result($result, 0, "FORMING_TOTAL"); $formingTotal = convertToDozen($formingTotal, $Comp); $formingAccum = $formingAccum = $formingTotal; $dippingTotal = mysql_result($result, 0, "DIPPING_TOTAL"); $dippingTotal = convertToDozen($dippingTotal, $Comp); $dippingAccum = $dippingAccum + $dippingTotal; $virtualY = $weighingTotal + $compoundingTotal + $extrusionTotal + $formingTotal; $totalY = $dippingTotal + $virtualY; function convertToDozen ($total, $cmpdType) { switch ($cmpdType) { case "P28" : $convTotal = (($total * 1000) / 22.00) / 12; break; case "P30" : $convTotal = (($total * 1000) / 25.10) / 12; break; case "P32" : $convTotal = (($total * 1000) / 22.50) / 12; break; case "P33" : $convTotal = (($total * 1000) / 25.00) / 12; break; case "P35" : $convTotal = (($total * 1000) / 25.25) / 12; break; case "P35M" : $convTotal = (($total * 1000) / 22.60) / 12; break; case "P35W" : $convTotal = (($total * 1000) / 22.50) / 12; break; case "P38" : $convTotal = (($total * 1000) / 26.70) / 12; break; case "P41" : $convTotal = (($total * 1000) / 24.80) / 12; break; case "P42" : $convTotal = (($total * 1000) / 18.90) / 12; break; case "P43" : $convTotal = (($total * 1000) / 25.00) / 12; break; case "P46" : $convTotal = (($total * 1000) / 27.00) / 12; break; case "P47" : $convTotal = (($total * 1000) / 27.60) / 12; break; } return round($convTotal, 2); }}else{ } $sql = "SELECT jo_number, ETD, PO_No, SKUCode, Description, POQty, PriorityFROM job_order ORDER BY jo_number, ETD";$res = mysql_query($sql,$con);?><div id="kanban_table" style="overflow:auto; height:215px;"><table><th> JO No.</th><th> ETD </th><th> PO No. </th><th> SKU Code </th><th> Description </th><th> PO Req </th><th> Priority</th><?php$sql = "SELECT ETD, PO_No, SKUCode, Description, POReqFROM sales_order WHERE NOT EXISTS (SELECT PO_No FROM job_order WHERE job_order.PO_No = sales_order.PO_No) ORDER BY ETD, PO_No ";$res_so = mysql_query($sql, $con);while($row = mysql_fetch_assoc($res_so)){echo "<form name='joborder_form' action='' method='post'>"; $PO_No = $row['PO_No']; echo "<tr><td><input type='text' value='' style='border:none;' size='10'></td><td><input type='text' name='ETD' id='ETD' value='$row[ETD]' style='border:none;' size='10'></td><td><input type='text' name='PO_No' id='PO_No' value='$row[PO_No]' style='border:none;' size='30'></td><td><input type='text' name='SKUCode' id='SKUCode' value='$row[sKUCode]' style='border:none;' size='15'></td><td><input type='text' name='Description' id='Description' value='$row[Description]' style='border:none;' size='35'></td><td><input type='text' name='POReq' id='POReq' value='$row[POReq]' style='border:none;' size='10'></td><td><input type='submit' name='priority' value='Approved' id='priority'></td></tr>";echo "</form>";}echo "</table>";echo "</div>"; echo "<div style='overflow:auto; height:215px;'>";echo "<table>";while($row_job = mysql_fetch_assoc($res)){ echo "<tr> <td><input type='text' name='JO_No_' id='JO_No_' value='$row_job[jo_number]' style='border:none;width:auto;' size='10'></td> <td><input type='text' name='ETD_' id='ETD_' value='$row_job[ETD]' style='border:none;width:auto;' size='10'></td> <td><input type='text' name='PO_No_' id='PO_No_' value='$row_job[PO_No]' style='border:none;' size='30'></td> <td><input type='text' name='SKUCode_' id='SKUCode_' value='$row_job[sKUCode]' style='border:none;' size='15'></td> <td><input type='text' name='Description_' id='Description_' value='$row_job[Description]' style='border:none;' size='35'></td> <td><input type='text' name='POReq_' id='POReq_' value='$row_job[POQty]' style='border:none;width:auto;' size='10'></td> <td><input type='text' name='priority_' value='$row_job[Priority]' id='priority_' style='border:none;width:auto;' size='10'></td> </tr>" ;}echo "</table>";echo "</div>" ?> </body></html> but I when I echo this: echo $weighingTotal; No result, then when I debug my code I got an error: Call to undefined function. I can’t configured out where in my code was wrong? Any help is highly appreciated. Thank you Link to comment Share on other sites More sharing options...
justsomeguy Posted April 25, 2012 Share Posted April 25, 2012 Move the function definition higher up or outside of the if statement. When you define a function inside an if statement it doesn't get defined until the code reaches that point, which means you're trying to call the function before it's defined. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.