为什么金字塔输入超过15就会报502,空心输入超过8就会报502

来源:2-13 作业题

刘一

2019-06-11 20:34:39

<!DOCTYPE html>
<html>
<head>
   <meta charset="UTF-8">
   <title>时间提示语</title>

</head>
<body>
<h1>金字塔与空心男孩</h1>
<form action="22.php" method="post">
   <input type="text" name="num"><br/>
   <input type="submit" name="jzt" value="金字塔">
   <input type="submit" name="kx" value="空心菱形">

</form>
</body>

<?php

error_reporting(E_ALL&~E_NOTICE);
$n=$_POST['num'];
$j=$_POST['jzt'];
$kx=$_POST['kx'];
if ($j == "金字塔") {
   if(is_numeric($n)&& $n>0&&strpos($n,'.')==false) {

       for ($i = 0; $i <= $n; $i++) {
           for ($k = 1; $k <= $n - $i; $k++) {
               echo '&nbsp'.'&nbsp';
           }
           for ($j = 1; $j <= 2 * $i - 1; $j++) {
               echo '*';
           }
           echo '<br/>';
       }

   }else  echo '输入正整数';


}
elseif($kx=="空心菱形"){
//判断是否为正整数
   if(is_numeric($n) && $n>=0 && strpos($n,".")==false){
//上面菱形部分
       for($i=1;$i<=$n;$i++){
           for($k=1;$k<=$n-$i;$k++){
               echo "&nbsp";
           }
           for($j=1;$j<=$i*2-1;$j++){
               if($i==1){
                   echo "*";
               }else{
                   if($j==1||$j==$i*2-1){
                       echo "*";
                   }else{
                       echo "&nbsp;";
                   }
               }
           }
           echo'<br/>';
       }
//下面菱形部分
       for($i=$n;$i>=1;$i--){
           for($k=1;$k<=$n-$i;$k++){
               echo "&nbsp;";
           }
           for($j=$i*2-1;$j>=1;$j--){
               if($i==1){
                   echo '*';
               }else{
                   if($j==$i*2-1||$j==1){
                       echo'*';
                   }else{
                       echo"&nbsp;";
                   }
               }
           }
           echo "<br/>";
       }

   }else{
       echo "请输入正整数";
   }
}else{
   exit;
}

?>

写回答

2回答

好帮手慕小尤

2019-08-05

同学你好, 简单来说 502 是报错类型代码 bad getway 错误的网关 
1. 产生错误的原因  
  连接超时 我们向服务器器发送请求 由于服务器当前链接太多,导致服务器方面无法给于正常的响应,产生此类报错。
2. 刷新的方式可以解决此问题,快捷键 ctrl+F5,重新向服务器发送请求。

3. 或修改php.ini中的max_execution_time配置(超时时间)为300 

祝学习愉快!

0

好帮手慕小尤

2019-06-12

同学你好,运行代码并没有发现问题。导致502错误的原因有很多。可以反馈报错截图,方便寻找错误。温馨提示:浏览器中存在兼容性问题,对&nbsp的输出存在一定差异性。可以使用<span style='color:#fff;'>*</span> 代替 &nbsp 输出。祝学习愉快!


0
hhangeH
h Failed to load resource: the server responded with a status of 502 (Bad Gateway) 只有这个提示。还经常出现长时间停留在等待localhosyt响应的状态的现象。 有时候多刷新几次就好了,有时候要重新打开Phpstorm。
h019-08-05
共1条回复

0 学习 · 4928 问题

查看课程