这个报错怎么用if判断呢
来源:2-1 通过array()形式定义数组
消除bug
2019-03-04 19:27:27
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>慕课网</title> </head> <body> <form action="#" method="post"> <input type="text" name="num" placeholder="请输入要打印的行数"> <br/><button text="submit" name="button" value="pyramid">金字塔</button> <button text="submit" name="button" value="rhombus">空心菱形</button> </form> <?php error_reporting(E_ALL&E_NOTICE); //接收用户提交的数据 $num=$_POST['num']; if($num>=0){ if($_POST){ //判断用户选择打印金字塔 if($_POST['button']=='pyramid'){ //循环输出金字塔的行数 for($i=1;$i<=$num;$i++){ //循环输出空白* for($j=$i;$j<=$num;$j++){ echo '<span style="color:#FFF">*</span>'; } //循环输出每行*数 for($a=1;$a<=$i*2-1;$a++){ echo '*'; } echo '<br/>'; } //空心菱形上半部分 //判断用户选择打印空心菱形 }elseif($_POST['button']=='rhombus'){ //循环输出空心菱形的行数 for($i=1;$i<=$num;$i++){ //循环输出空白* for($j=$i;$j<=$num;$j++){ echo '<span style="color:#FFF">*</span>'; } //循环输出每行*数 for($a=1;$a<=$i*2-1;$a++){ //判断头尾*进行输出 if($a==1||$a==$i*2-1){ echo '*'; }else{ echo '<span style="color:#FFF">*</span>'; } } echo '<br/>'; } //空心菱形下半部分 //循环输出空心菱形的行数-1 for($i=$num-1;$i>=1;$i--){ //循环输出空白* for($j=$num;$j>=$i;$j--){ echo '<span style="color:#FFF">*</span>'; } //循环输出每行*数 for($a=1;$a<=$i*2-1;$a++){ //判断头尾*进行输出 if($a==1||$a==$i*2-1){ echo'*'; }else{ echo '<span style="color:#FFF">*</span>'; } } echo'<br/>'; } } } }else{ echo '层数请为正整数'; } ?> </body> </html>
1回答
您好,先判断是否有post数据,存在post数据时再接收数据,进行判断。参考如下:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>慕课网</title> </head> <body> <form action="#" method="post"> <input type="text" name="num" placeholder="请输入要打印的行数"> <br/><button text="submit" name="button" value="pyramid">金字塔</button> <button text="submit" name="button" value="rhombus">空心菱形</button> </form> <?php if($_POST){ //接收用户提交的数据 $num=$_POST['num']; if($num>=0){ //判断用户选择打印金字塔 if($_POST['button']=='pyramid'){ //循环输出金字塔的行数 for($i=1;$i<=$num;$i++){ //循环输出空白* for($j=$i;$j<=$num;$j++){ echo '<span style="color:#FFF">*</span>'; } //循环输出每行*数 for($a=1;$a<=$i*2-1;$a++){ echo '*'; } echo '<br/>'; } //空心菱形上半部分 //判断用户选择打印空心菱形 }elseif($_POST['button']=='rhombus'){ //循环输出空心菱形的行数 for($i=1;$i<=$num;$i++){ //循环输出空白* for($j=$i;$j<=$num;$j++){ echo '<span style="color:#FFF">*</span>'; } //循环输出每行*数 for($a=1;$a<=$i*2-1;$a++){ //判断头尾*进行输出 if($a==1||$a==$i*2-1){ echo '*'; }else{ echo '<span style="color:#FFF">*</span>'; } } echo '<br/>'; } //空心菱形下半部分 //循环输出空心菱形的行数-1 for($i=$num-1;$i>=1;$i--){ //循环输出空白* for($j=$num;$j>=$i;$j--){ echo '<span style="color:#FFF">*</span>'; } //循环输出每行*数 for($a=1;$a<=$i*2-1;$a++){ //判断头尾*进行输出 if($a==1||$a==$i*2-1){ echo'*'; }else{ echo '<span style="color:#FFF">*</span>'; } } echo'<br/>'; } } }else{ echo '层数请为正整数'; } } ?> </body> </html>
如果解决了您的问题,请采纳。祝学习愉快!
相似问题