2-12作业反馈问题
我有两个问题
第一个问题是我自己运行的时候并没有通知报错,如图一
第二个就是老师建议用isset来检查函数是否存在,如图二,像我这段代码的时候具体应该如何进行;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 | <!DOCTYPE html> <html> <head> <meta charset= "utf-8" > <title>homework</title> </head> <body> <form class = "" action= "test.php" method= "post" > <input type= "text" name= "num1" placeholder= "请输入要打印的行数" ><br/> <button type= "submit" name= "triangle" value= "tr" >金字塔</button> <button type= "submit" name= "diamond" value= "di" >菱形</button> </form> <?php error_reporting (E_ALL&~E_NOTICE); $num1 = $_POST [ 'num1' ]; //接收数字变量 $triangle = $_POST [ 'triangle' ]; //接收金字塔变量 $diamond = $_POST [ 'diamond' ]; //接收菱形变量 //当接收到三角形变量的时候 if ( $triangle ){ //$num1是接收到数字变量的行数 for ( $i =1; $i <= $num1 ; $i ++){ //输出每行的空格 for ( $j = $num1 - $i ; $j >=1; $j --){ echo "<span style='color:#fff;'>*</span>" ; } //输出每行的空格,行数和第几列关系到空格数量的个数 for ( $k =1; $k <=2* $i -1; $k ++){ echo '*' ; } echo '<br/>' ; } } //当接收到菱形变量的时候 if ( $diamond ){ //上半部分的三角形 //控制行数 for ( $i =1; $i <= $num1 ; $i ++){ //输出每行的空格,行数和第几列关系到空格数量的个数: for ( $j = $num1 - $i ; $j >=1; $j --){ echo '<span style="color:#fff;">*</span>' ; } //输出每行的星星以及空格 for ( $k =1; $k <=2* $i -1; $k ++){ //输出第一个星星位置,再找出最后一个星星位子输出 if ( $k ==1|| $k ==2* $i -1){ echo '*' ; //除了寻找的位子都是空格 } else { echo '<span style="color:#fff;">*</span>' ; } } echo '<br/>' ; } //下下半部分三角形 //控制行数,要比上半部分少一个行 for ( $i = $num1 -1; $i >=1; $i --){ //输出每行的空格,行数和第几列关系到空格数量的个数: for ( $j =1; $j <= $num1 - $i ; $j ++){ echo '<span style="color:#fff;">*</span>' ; } //输出每行的星星以及空格 for ( $k =1; $k <=2* $i -1; $k ++){ if ( $k ==1|| $k ==2* $i -1){ echo '*' ; } else { echo '<span style="color:#fff;">*</span>' ; } } echo '<br/>' ; } } ?> </body> </html> |
32
收起
正在回答
2回答
您好,老师是将你屏蔽错误的代码去掉之后运行的,会出现Notice错误。但是这并不是说代码逻辑有问题,而是对于这种情况,建议同学进行解决,不要存在Notice错误。
isset()函数用于检测变量是否已设置并且非 NULL。例如可以检测$_POST['num1'];是否为NULL,为NULL时不执行,不为NULL时在执行代码,同样的方式判断其余两个$_POST接收到的值。
如果解决了您的问题,请采纳,祝学习愉快!
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧