PHP 코드와 데이터베이스에 약간의 문제가 있습니다. 페이지를 새로 고칠 때마다 새 비어있는 행이 데이터베이스에 추가 될 때도 페이지를 열 때 어떤 문제가 발생합니까?PHP - 페이지 새로 고침시 새 레코드 새로 고침
<?php
if (isset($_POST)) {
$con = mysql_connect("localhost","dwarfmaster","");
if (!$con) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db("my_dwarfmaster", $con);
$name = $_POST['name'];
$release_year = $_POST['release_year'];
$publisher = $_POST['publisher'];
$genre = $_POST['genre'];
$sql = "INSERT INTO gamelist (name, release_year, publisher, genre)
VALUES
('$_POST[name]','$_POST[release_year]',
'$_POST[publisher]','$_POST[genre]')";
if (!mysql_query($sql, $con)) {
die('Error: ' . mysql_error());
}
echo "1 record added";
mysql_close($con);
}
?>
에
을 변경하고 같은 페이지에서 양식을 말한다. 'named() '제출 버튼에 대해'isset()'를 사용하십시오. –
[새 코드에서 mysql_ * 함수를 사용하지 마십시오.] (http://bit.ly/phpmsql). 더 이상 유지 관리되지 않으며 공식적으로 사용되지 않습니다 (https://wiki.php.net/rfc/mysql_deprecation). [빨간색 상자] (http://j.mp/Te9zIL)를 참조하십시오. 대신 [* prepared statements *] (http://j.mp/T9hLWi)에 대해 알아보고 [PDO] (http://php.net/pdo) 또는 [MySQLi] (http://php.net/)를 사용하십시오. mysqli) - [이 기사] (http://j.mp/QEx8IB)는 어떤 결정을 내리는 데 도움이 될 것입니다. PDO를 선택하면 [여기는 좋은 튜토리얼입니다] (http://j.mp/PoWehJ). ** 당신은 또한 [SQL injections] (http://www.stackoverflow.com/q/60174)을 열어 볼 수 있습니다. ** –
'$ _POST'를'isset'하고'empty'하십시오. – Bora