You cannot see this page without javascript.

magicsquare.php코드 원문을 여기 다 게시하는 것은 다음으로 미루고 기초 코드부터 완성형으로 변화해 가는 과정을 한번 해보도록 하겠다.

 

먼저 앞서 작성했던 html코드로 부터 전달받은 square의 값을 변수로 저장하기 위하여 다음과 같은 코드를 작성하였다.

 

<?php

$square=$_POST['square'];

?>

 

위의 코드는 html문서로 부터 사용자가 원하는 값을 입력받아 square라는 이름으로 전달한 것을 magicsquare.php 문서에서 변수 $square 에 저장하는 코드이다.

 

다음으로 if문을 사용하여 마방진의 조건을 검출하는 코드를 추가해보도록 하자.

여기서 마방진의 조건이란 사용자로부터 받은 입력값이 3이상의 자연수여야 한다는 것이다.

수학적으로 마방진을 풀이할 것이 아니기 때문에 생성조건에 대한 증명은 하지 않도록 하겠다.

 

<?php

$square=$_POST['square'];

if ( ( $square <= 2 ) or ( $square != intval ( $square ) ) )

{

?>
        <p align="center">
                3이상의 자연수를 입력하여 주세요!
        </p>
<?php

}

else

{

}

?>

위 코드에 추가된 부분중 빨간색 코드는 사용자가 입력한 값이 3보다 작거나 정수가 아니라면 파란색의 html코드를 출력하라는 내용이고, 출력된 html코드는 웹서버를 통하여 그대로 브라우져에 보여지게 될 것이다.

 

여기서 잠깐 생각해볼 것이 파란색 출력문을 아래와 같이 php의 echo등의 출력 명령으로 처리하여도 되겠고, 상단의 녹색 코드문 처럼 php를 닫고 html코드로 직접 출력한 다음 php를 다시 여는 방법도 가능하다.

 

<?php

$square=$_POST['square'];

if ( ( $square <= 2 ) or ( $square != intval ( $square ) ) )

{

echo "<p align="center">3이상의 자연수를 입력하여 주세요!</p>";

}

else

{

}

?>

 

이런 방법은 본인이 선택하여 구성하자.

 

위의 빨간색 if문을 보자면

1. $square <= 2

2. $square != inval($square)

이렇게 두게의 명제가 or 논리연산으로 연결되어있다.

1은 "사용자가 입력한 값이 2보다 작거나 같다면"이라고 볼 수 있겠고,

2는 "사용자가 입력한 값이 정수가 아니라면"이라고 볼 수 있을 것이다.

1과 2가 or로 연결되었기 때문에 둘을 정리하자면 사용자의 입력값이 2보다 작거나 같을 경우나, 정수가 아닌 경우는 마방진을 생성할 수 없음으로 파란색 문장을 출력하라는 뜻이 되겠다.

 

이번에는 여기까지 정리하고 다음 글에서는 마방진 생성이 가능할 경우에 대하여 보도록 하겠다.

태그
엮인글 :
List of Articles
번호 제목 글쓴이 날짜 조회 수

APM mariadb download origin address

  • LynX
  • 2019-06-19
  • 조회 수 2009

APM What one can and should optimize

  • LynX
  • 2019-06-03
  • 조회 수 1423

CentOS mariadb install

  • LynX
  • 2019-05-31
  • 조회 수 1185

CentOS init mode change

  • LynX
  • 2019-05-30
  • 조회 수 1294

APM ext zip install

  • LynX
  • 2019-02-19
  • 조회 수 1618

APM ext ImageMagick install

  • LynX
  • 2019-02-19
  • 조회 수 530

3D Printer Pronterface(PrintRun) install file

  • LynX
  • 2018-09-13
  • 조회 수 754

CentOS Grub UUID change

  • LynX
  • 2018-08-08
  • 조회 수 880

Linux letsencrypt wildcard

  • LynX
  • 2018-07-26
  • 조회 수 798

Printer cura usb connection

  • LynX
  • 2018-07-06
  • 조회 수 668

CentOS cli 무선랜

  • LynX
  • 2018-06-07
  • 조회 수 449

APM 윈도우에 APM 페키지 설치 file

  • LynX
  • 2018-05-04
  • 조회 수 627

APM MySQLTuner 설치

  • LynX
  • 2018-04-27
  • 조회 수 546

CentOS CentOS7 커널 업데이트

  • LynX
  • 2018-04-23
  • 조회 수 703

HTML Tag CSS 여러가지 모양 만들기

  • LynX
  • 2018-02-08
  • 조회 수 773

Linux wkhtmltopdf wkhtmltoimage install

  • LynX
  • 2018-01-31
  • 조회 수 604

APM LZ4_LIBS Not Found (CentOS7, MariaDB 10.1.29)

  • LynX
  • 2018-01-03
  • 조회 수 503

APM mysql ./configure

  • LynX
  • 2017-12-15
  • 조회 수 806

APM PHP-7.2.0

  • LynX
  • 2017-12-12
  • 조회 수 3157

Linux libiconv

  • LynX
  • 2017-12-08
  • 조회 수 558

XE Login