如何在连续调用MySQLi_Connect后修复致命错误?

时间:2016-12-01 09:40:49

标签: php xampp

我必须学习一些PHP来设置一些假日图像表。我最初使用MySQL在早期版本的WAMP中做到这一点并且工作正常。

我现在面临使用当前版本的XAMPP更新表格和国家/地区(将所有调用转换为MySQLi)。

这是我的问题开始的地方。我得到了"致命错误:在"中超过了30秒的最大执行时间。我搜索了这个网站和其他一些网站,以找到我特定错误情况的答案,但没有成功。

我在Win 10下运行最新的XAMPP。我有3个文件:

Generate_Tables_DE - 我也有类似的EN。它只是定义输出语言。

      <?php
      echo "<br>include Generate_Tables.php<br><br>";
      include '../Generate_Tables.php';
      echo "<br />Generating Tables - German<br /><br />";
      Generate_Tables("#FFFFFF", "DE"); 
      ?>

它叫: Generate_Tables - 这将在DB中设置实际表格,每个国家/地区都有一个表格:

      <?php
      function Generate_Tables($BgCol, $Land)
      {
      echo $BgCol . "   " . $Land . "<BR />"; 
      include("../Create_Table.php");

      $Sum_Total = 0;
      $Sum_Total += Create_Table("Thailand", $BgCol, $Land); 
      $Sum_Total += Create_Table("India", $BgCol, $Land); 
      $Sum_Total += Create_Table("Indonesia", $BgCol, $Land); 
      echo "Sum Total of all images = " . $Sum_Total . "<br /><br />";
      }
      ?>

然后调用: Create_Table - 这就是问题发生的地方:

  <?php
  function Create_Table($Name, $bgCol, $Land)
  {

  require_once("../constants.php");
  require_once("../functions.php");
  $DBconn = mysqli_connect('localhost','root','');
  if (!$DBconn) {
      die("<BR />Database DBconn failed: " . mysql_error());
  }
  $db_select = mysqli_select_db($DBconn,'Images');
   if (!$db_select) {
      die("Database selection failed: " . mysql_error());
   }

  /* Some processing */

  if (mysqli_close($DBconn) == FALSE) 
    {
        echo "<BR/>End DBconn failed";
    }
  return ($array_count);
  }
  ?>

&#34;泰国&#34;表生成没有问题,&#34; India&#34; table已启动,但在MySQLi_connect命令上退出时间为30秒。

我尝试过连接的各种变体,例如在连接中包含数据库名称并删除MySQLi_select。什么都没有解决问题。

这与我发现的所有答案的不同之处在于,只有在Create_Table的第二次迭代中才会发生错误。如果我删除&#34;泰国&#34;致电Generate_Table,&#34;印度&#34;工作,但&#34;印度尼西亚&#34;现在有问题了。 我搜索过教程和手册,但似乎没有什么我做错了。 有人可以帮忙吗?请?

P.S。对不起,如果整个事情有点原始,那是我第一次涉足PHP。

1 个答案:

答案 0 :(得分:-1)

更改max_execution_time

上的php.ini配置

或者您可以通过以下方式在运行时更改该特定脚本的执行时间:

ini_set('max_execution_time', 300); //300 seconds = 5 minutes