[php]config.php 파일을 만들어 코드 간소화 시키기

2023. 3. 7. 20:03보안 실습/linux

https://sumsum2.tistory.com/19

 

ubuntu리눅스 환경에서 apache, mysql, php 개발환경 구축

vmware로 하면 노후화된 노트북이 자꾸 중간에 꺼져서 wsl 환경으로 구축을 하려고 하는데 자료들도 찾기가 어려웠고 wsl환경으로 하니 이상하게 아파치가 죽어버렸다. 따라서 vmware ubuntu linux로 서

sumsum2.tistory.com

이전 게시글에서 데이터베이스 연결은 거의 동일할텐데

같은 코드를 php 파일 작성마다 만드는 것은 매우 비효율 적이다.

따라서 이에 대해 간소화 하고자 모듈화를 한다.

 

config.php

<?php

// MySQL database configuration
define('DB_HOST', 'localhost');
define('DB_USERNAME', 'manager');
define('DB_PASSWORD', '1234');
define('DB_NAME', 'member');

// Establish database connection
function dbconnect() {
    $conn = mysqli_connect(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_NAME);
    if (!$conn) {
        die("Connection failed: " . mysqli_connect_error());
    }
    return $conn;
}

?>

db 연결 정보나 함수 같은 것들을 넣어준다.

 

index.php

<?php
  include "./config.php";
?>
<html>
<head>
<title>Practice</title>
</head>
<body>
<h1>PRACTICE</h1>
<form method=get action=index.php>
	<input type=text name=id><br>
	<input type=text name=pw><br>
<input value="submit" type=submit>
</form>
<?php
  if($_GET['id']){
	$db = dbconnect();
  	$r=mysqli_fetch_assoc(mysqli_query($db,"SELECT id FROM member WHERE id='{$_GET['id']}' and password='{$_GET['pw']}'")) or die("query error");
  	if($r['id']=="guest") echo("guest");
  	if($r['id']=="admin") echo("<script>location.replace('./suc.html');</script>"); //로그인성공하면 페이지이동
}
?>
<br>
</body>
</html>

이런식으로 로그인화면 구성을 해본다.