Wordpress超时

时间:2016-11-20 04:21:37

标签: php wordpress csv

我是WordPress网站的后端开发人员:https://westtechshipping.com

管理员方面是我们花费大部分时间的地方。我们处理客户订购的包裹并交付。我有一个系统,你上传一个.csv文件,PHP函数读取.csv的内容,然后将数据更新到数据库,然后发送电子邮件给我们的客户。

随着时间的推移,我们意识到我们无法进行超过30个条目的.csv上传,因为我们会收到类似这样的错误

我从谷歌图片中拍摄了这张图片,因为由于这篇文章的时间,我暂时无法重新创建错误,但错误类似。 enter image description here

我们有时会得到一个说明这个

的页面

enter image description here

我们尝试了很多东西,但不确定问题是什么。这些打嗝导致我们的数据上传两次,并且会向每个客户发送多封电子邮件 我们已经与我们的服务器托管,去爸爸,并遵循他们相应地编辑我们的user.ini的建议。

这是我们的user.ini

中的PHP设置

enter image description here

如果这是代码的问题,下面是我们.csv上传功能的当前代码。

  if(isset($_POST["submitcsv"]))   // Upload Package Amount CSV File
    {
     $file = $_FILES['file']['tmp_name'];
     $handle = fopen($file, "r");
     $c = 0;
     $c2 = 0;
     $row = 1;


     while(($filesop = fgetcsv($handle, 1000, ",")) !== false)// What?
     {
       $Name = $filesop[0];
       $AccID = $filesop[1];
       $Freight = $filesop[2];
       $Handling = $filesop[3];
       $Consolidation = $filesop[4];
       $Duty = $filesop[5];
       $VTax = $filesop[6];
       $Delivery = $filesop[7];
       $Insurance = $filesop[8];
       $Amount = $filesop[9];
       $Statuscsv = $filesop[10];
       $Pickup = $filesop[11];
       $trackingnumber =$filesop[12];



       if($row == 1)  { $row++; continue;}
       $num = count($filesop);

       //Separating First name
       $First_Name = substr($Name,0,strrpos($Name,' '));
       if(strrpos($Name, ' ')!== false){
         $First_Name = $First_Name;
       }else{
         $First_Name = $Name;
       }
       //Getting rid of blank costs

       if(empty($Freight)){$Freight = "0";}
       if(empty($Handling) ){$Handling = "0";}
       if(empty($Consolidation)){$Consolidation = "0";}
       if(empty($Duty) ){$Duty = "0";}
       if(empty($VTax) ){$VTax = "0";}
       if(empty($Delivery)){$Delivery = "0";}
       if(empty($Insurance)){$Insurance = "0";}
       if(empty($Amount)){$Amount = "0";}

       //$pkg = get_packages_query($trackingnumber);
       //$pkginv = get_invoices_by_trackingid($trackingnumber);
       $userID = explode('WT100',$AccID);
       $userdata = get_userdata( $userID[1] );
       $site_name = get_bloginfo('name');
       $messageinv = "                <style>
                     @media screen (max-width:768px) { /* smartphones, iPhone, portrait 480x320 phones */
                               #packagetable{
                                 margin-left:20px;
                               }
                             }
                       </style>
            <div style='font-size:15px;'>
               <strong> Dear ".$First_Name."</strong>, <br><br>
               ".$site_name." has a package available for you. You can come in to collect during our working hours of Monday- Friday 8AM to 5PM and Saturdays 9AM to 1PM.
             </div>
              <br><br>
             <table id='packagetable' style='border:1px solid #8EAADB; margin-left:150px;'>
              <tr class ='invhead' style='background-color:#4472C4; color:white;'>
                <th>Charges</th>
                <th>Amount (EC)</th>
              </tr>
              <tr class ='2ndtr' >
                <td > Tracking Number </td>
                <td> ".$trackingnumber."</td>
              </tr>
               <tr class ='1str' style='background-color:#D9E2F3; '>
                 <td > Shipping Charge: </td>
                 <td> $".$Freight." </td>
               </tr>
               <tr class ='2ndtr' >
                 <td > Duty Charge: </td>
                 <td> $".$Duty."</td>
               </tr>
               <tr class ='1str' style='background-color:#D9E2F3; '>
                 <td > Handling Fee: </td>
                 <td> $".$Handling." </td>
               </tr>
               <tr class ='2ndtr' >
                 <td > Consolidation Fee: </td>
                 <td> $".$Consolidation." </td>
               </tr>
               <tr class ='1str' style='background-color:#D9E2F3; '>
                 <td > Delivery Fee: </td>
                 <td> $".$Delivery." </td>
               </tr>
               <tr class ='2ndtr' >
                 <td > <strong>Total Amount: </strong> </td>
                 <td><strong>$".$Amount."</strong> </td>
               </tr>
             </table>
             <div>
              <br><br>
              Thanks for using our service! We appreciate it.
               <br><br>
               Regards,<br>
               ".$site_name."
               <br>______________________________________________________<br><br>
               <strong>Call Us</strong><br><br>
               <strong>Rodney Bay</strong>: 458-9378    <strong>Castries</strong>: 451-9378    <strong>Vieux Fort</strong>: 454-9378
             </div>
             ";
    $messageinvadmin .=
    "                <style>
                  @media screen (max-width:768px) { /* smartphones, iPhone, portrait 480x320 phones */
                            #packagetable{
                              margin-left:20px;
                            }
                          }
                    </style>
<div><strong>".$Name."</strong> with email address ".$userdata->data->user_email.", had an invoice update. <br><br>
      View the changes below
                </div>
          <br><br>
         <table id='packagetable' style='border:1px solid #8EAADB; margin-left:150px;'>
          <tr class ='invhead' style='background-color:#4472C4; color:white;'>
            <th>Charges</th>
            <th>Amount (EC)</th>
          </tr>
          <tr class ='2ndtr' >
            <td > Tracking Number </td>
            <td> ".$trackingnumber."</td>
          </tr>
           <tr class ='1str' style='background-color:#D9E2F3; '>
             <td > Shipping Charge: </td>
             <td> $".$Freight." </td>
           </tr>
           <tr class ='2ndtr' >
             <td > Duty Charge: </td>
             <td> $".$Duty."</td>
           </tr>
           <tr class ='1str' style='background-color:#D9E2F3; '>
             <td > Handling Fee: </td>
             <td> $".$Handling." </td>
           </tr>
           <tr class ='2ndtr' >
             <td > Consolidation Fee: </td>
             <td> $".$Consolidation." </td>
           </tr>
           <tr class ='1str' style='background-color:#D9E2F3; '>
             <td > Delivery Fee: </td>
             <td> $".$Delivery." </td>
           </tr>
           <tr class ='2ndtr' >
             <td > <strong>Total Amount: </strong> </td>
             <td><strong>$".$Amount."</strong> </td>
           </tr>
           <tr class ='1str' style='background-color:#D9E2F3; '>
             <td > Delivery Fee: </td>
             <td> $".$Delivery." </td>
           </tr>
         </table>
         _______________________________________________________
           <br><br>
            ";

          $closing =  "Regards,<br>
           ".$site_name."
           <br>______________________________________________________<br><br>
           <strong>Call Us</strong><br><br>
           <strong>Rodney Bay</strong>: 458-9378    <strong>Castries</strong>: 451-9378    <strong>Vieux Fort</strong>: 454-9378
         </div>
         ";

         $invtotalsql = mysql_fetch_assoc(mysql_query("SELECT invoice_total_charges FROM wp_xq4w067xaq_customer_invoice WHERE invoice_tracking_number = '$trackingnumber'"));
         $packstatsql = mysql_fetch_assoc(mysql_query("SELECT pms_status FROM wp_xq4w067xaq_package WHERE tracking_id = '$trackingnumber'"));

         if($Statuscsv == "Collected & Paid"){
           $Statuscsv = 5;
         }if($Statuscsv == "Available for Pick-Up"){
           $Statuscsv = 4;
         }if($Statuscsv == "Pending Invoice"){
           $Statuscsv = 3;
         }if($Statuscsv == "Paid"){
           $Statuscsv = 7;
         }if($Statuscsv == "Collected"){
           $Statuscsv = 9;
         }if($Statuscsv == "Shipped"){
           $Statuscsv = 2;
         }if($Statuscsv == "Received"){
           $Statuscsv = 1;
         }

             if($invtotalsql['invoice_total_charges'] !== $Amount OR $packstatsql['pms_status'] !== $Statuscsv){
                 send_email_pkg2($userdata->data->user_email, $messageinv, $site_name. ' Package Amount Update',$userdata->user_email_2,$userdata->user_email_3);
                 //send_email_pkg("shipping@westtg.com", $messageinvadmin, $site_name. "Package Amount update");
                 //send_email_pkg("5sp4lr9@gmail.com", $messageinvadmin, $site_name. "Invoices");
                 //send_email_pkg("5sp4lr9@gmail.com", $message3, $site_name. "Minimum Invoices");
            }



    $sql = "UPDATE wp_xq4w067xaq_package SET  pms_full_name='$Name',pms_status='$Statuscsv',pms_amount_owned='$Amount',pms_pickup='$Pickup' WHERE tracking_id='$trackingnumber'";
    mysql_query($sql);
          $c = $c + 1; // count number of package info updated
    $sql2 = "UPDATE wp_xq4w067xaq_customer_invoice SET invoice_shipping_charge='$Freight',invoice_handling_fee='$Handling',invoice_consolidation_fee='$Consolidation',invoice_duty_charge='$Duty',invoice_added_tax='$Vtax',invoice_delivery_fee='$Delivery',invoice_insurance='$Insurance',invoice_total_charges='$Amount' WHERE invoice_tracking_number='$trackingnumber'";
    mysql_query($sql2);
     $c2 = $c2 + 1;  // count number of invoices updated
     //update_invoice2();

}
$finaladmin = $messageinvadmin.$closing;
send_email_pkg("shipping@westtg.com", $finaladmin, $site_name. "Package Amount update");
// Success OR Error Message

       if($sql AND $sql2){
         echo "Your database has imported successfully. You have inserted ". $c ." records in packages and ".$c2." records in invoices";
       }else{
         echo "Sorry! There is some problem.";
       }

    }

0 个答案:

没有答案