메뉴 건너뛰기

XEDITION

project2018

PHP MySQL INSERT 문제에 관해

admin 2018.04.11 15:20 조회 수 : 0

<?php

 

$user_name = $_POST['user_name'];

$age = $_POST['age'];

 

$conn = mysqli_connect("localhost","root","","test_db");

//Check connection

if(mysqli_connect_errno()){

echo "MySQL 연결에 실패하였습니다 : " .mysqli_connect_error();

}

echo "insert";

 

echo $user_name;

echo "</br>";

echo $age;

 

mysqli_query($conn, "INSERT INTO persons (user_name, age) values ('$user_name','$age')");

mysqli_close($conn);

//person.php 페이지로 이동

echo "close";

echo("<meta http-equiv='Refresh' content='1'; URL=person.php;>");

?>

에서 마지막 echo("<meta http~~~~ 쪽에서 문제를 내는 것으로 보임.

위 코드대로 하면 Undefined index 오류가 뜨는데 DB에서 확인해보면 정상적으로 등록이 되었으나 시간이 지날수록 계속 늘어나는 것을 볼 수 있다.

그렇다면 여기서 브라우저를 잘 보면 계속해서 새로고침을 하는 것을 볼 수 있다.

이제 뭐가 원인인지 알 수 있을 것이다.

바로 새로고침을 하는 것.

새로고침을 하면서 해당 php에서만 루프를 돌리다보니 POST 값을 받을 수가 없는 것이다.

심지어 다른 페이지로 가지 않는다면 계속 엉뚱한 값만 DB에 넣다보니 리소스를 야금야금 먹어댈 것이다.

아무 소스나 막 가져다 쓰면 이런 참사를 불러올 수도 있다.

조심조심...

위로