PHP 신청문 퀴리활용하여 MySQL에 데이타 저장하기
페이지 정보
본문
아래의 내용을 학습하기 위해서는 MySQL 테이블에 uid , name , email , memo, date 의 필드를 먼저 생성시키셔야 가능합니다.
# write.php 내용
<form action="write_ok.php" method="post">
<input type="hidden" name="REQUEST_URI" value="<?php echo $_SERVER['REQUEST_URI']; ?>">
이름: <input type="text" name="name"><br>
전화: <input type="text" name="te1">-<input type="text" name="te2">-<input type="text" name="te3"><br>
메일: <input type="text" name="email"><br>
메모: <textarea name="memo" style="width:98%" rows="5" class="input_box"></textarea><br>
<input type="submit" name="submit" value=" 저장 ">
</form>
# write_ok.php 내용
<?php
// php.ini 의 register_globals=off 일 경우 (php >= 4.1.0)
//@extract($_GET);
//@extract($_POST);
//@extract($_SERVER);
$REQUEST_URI = $_POST['REQUEST_URI'];
$name = $_POST['name'];
$email = $_POST['email'];
$tel1 = $_POST['tel1'];
$tel2 = $_POST['tel2'];
$tel3 = $_POST['tel3'];
$memo = $_POST['memo'];
if ($name == "") { // 불량신청인 경우 되돌려보냄
?>
<script type="text/Javascript">
<!--
alert('비정상 경로로 접근하셨습니다.\n\n올바르게 작성해주세요');
history.back();
//-->
</script>
<?php
} else { // 정상신청인 경우 아래의 내용이 작동
if(intval($_POST["tel3"]) > 0) { // 숫자인가?
} else {
// alert 띄우면 스패머가 또다른 대응을 하니까 속임수
//echo ("<meta http-equiv='Refresh' content='0; URL=".$REQUEST_URI."'>");
//exit;
}
// MySQL 저장하기 시작
$mysql_host = "localhost";
$mysql_user = "디비아이디";
$mysql_password = "디비비밀번호";
$mysql_db = "데이타베이스";
$dbconn = mysqli_connect($mysql_host,$mysql_user,$mysql_password,$mysql_db) or die("데이터베이스 연결에 실패하였습니다.");
mysqli_select_db($dbconn,$mysqli_db);
// 그누보드5와 연동할때는
//include_once "../common.php"; // 그누보드5 common.php 경로 지정
//include_once G5_DATA_PATH."/dbconfig.php";
//$dbconn = mysqli_connect(G5_MYSQL_HOST,G5_MYSQL_USER,G5_MYSQL_PASSWORD,G5_MYSQL_DB) or die("데이터베이스 연결에 실패하였습니다.");
//mysqli_select_db($dbconn,G5_MYSQL_DB);
//@mysqli_query("set names utf8"); // 한글문제 생기면 주석 해제
$wdate = date("Y-m-d H:i:s");
$sql = "insert into 테이블이름 (";
$sql = $sql . "name, tel, email, memo, wdate ";
$sql = $sql .") values ( ";
$sql = $sql ."'". $name ."' ";
$sql = $sql .",'". $tel ."' ";
$sql = $sql .",'". $email ."' ";
$sql = $sql .",'". $memo ."' ";
$sql = $sql .",'". $wdate ."' ";
$sql = $sql ." ) ";
//$sql = "insert into 테이블이름 (name, email, memo, wdate) values ('$name', '$email', '$memo', now() ) "; // 글 작성날짜 -> now()
//echo "sql => $sql <br>"; // 쿼리값의 정상여부를 판단
$result=mysqli_query($dbconn,$sql);
echo mysqli_error();
mysqli_close($dbconn); // MySQL에 접속종료
// MySQL 저장하기 끝
//exit;
echo " <script>alert('저장되었습니다.'); document.location.href='{$REQUEST_URI}'; </script>";
// echo ("<meta http-equiv='Refresh' content='0; URL=로그아웃시 이동주소'>");
// header("location:연결될페이지.php");
/*
header();를 이용하여 강제로 list.php3 파일로 이동시킵니다.
만약 강제로 페이지 변환을 시키지 않았을 때 리프레쉬를 하게 되면 동일한 값이 계속 저장되기 때문에 꼭 강제로 페이지를 이동하여 주어야 합니다.
*/
} // 정상신청 확인
?>
# write.php 내용
<form action="write_ok.php" method="post">
<input type="hidden" name="REQUEST_URI" value="<?php echo $_SERVER['REQUEST_URI']; ?>">
이름: <input type="text" name="name"><br>
전화: <input type="text" name="te1">-<input type="text" name="te2">-<input type="text" name="te3"><br>
메일: <input type="text" name="email"><br>
메모: <textarea name="memo" style="width:98%" rows="5" class="input_box"></textarea><br>
<input type="submit" name="submit" value=" 저장 ">
</form>
# write_ok.php 내용
<?php
// php.ini 의 register_globals=off 일 경우 (php >= 4.1.0)
//@extract($_GET);
//@extract($_POST);
//@extract($_SERVER);
$REQUEST_URI = $_POST['REQUEST_URI'];
$name = $_POST['name'];
$email = $_POST['email'];
$tel1 = $_POST['tel1'];
$tel2 = $_POST['tel2'];
$tel3 = $_POST['tel3'];
$memo = $_POST['memo'];
if ($name == "") { // 불량신청인 경우 되돌려보냄
?>
<script type="text/Javascript">
<!--
alert('비정상 경로로 접근하셨습니다.\n\n올바르게 작성해주세요');
history.back();
//-->
</script>
<?php
} else { // 정상신청인 경우 아래의 내용이 작동
if(intval($_POST["tel3"]) > 0) { // 숫자인가?
} else {
// alert 띄우면 스패머가 또다른 대응을 하니까 속임수
//echo ("<meta http-equiv='Refresh' content='0; URL=".$REQUEST_URI."'>");
//exit;
}
// MySQL 저장하기 시작
$mysql_host = "localhost";
$mysql_user = "디비아이디";
$mysql_password = "디비비밀번호";
$mysql_db = "데이타베이스";
$dbconn = mysqli_connect($mysql_host,$mysql_user,$mysql_password,$mysql_db) or die("데이터베이스 연결에 실패하였습니다.");
mysqli_select_db($dbconn,$mysqli_db);
// 그누보드5와 연동할때는
//include_once "../common.php"; // 그누보드5 common.php 경로 지정
//include_once G5_DATA_PATH."/dbconfig.php";
//$dbconn = mysqli_connect(G5_MYSQL_HOST,G5_MYSQL_USER,G5_MYSQL_PASSWORD,G5_MYSQL_DB) or die("데이터베이스 연결에 실패하였습니다.");
//mysqli_select_db($dbconn,G5_MYSQL_DB);
//@mysqli_query("set names utf8"); // 한글문제 생기면 주석 해제
$wdate = date("Y-m-d H:i:s");
$sql = "insert into 테이블이름 (";
$sql = $sql . "name, tel, email, memo, wdate ";
$sql = $sql .") values ( ";
$sql = $sql ."'". $name ."' ";
$sql = $sql .",'". $tel ."' ";
$sql = $sql .",'". $email ."' ";
$sql = $sql .",'". $memo ."' ";
$sql = $sql .",'". $wdate ."' ";
$sql = $sql ." ) ";
//$sql = "insert into 테이블이름 (name, email, memo, wdate) values ('$name', '$email', '$memo', now() ) "; // 글 작성날짜 -> now()
//echo "sql => $sql <br>"; // 쿼리값의 정상여부를 판단
$result=mysqli_query($dbconn,$sql);
echo mysqli_error();
mysqli_close($dbconn); // MySQL에 접속종료
// MySQL 저장하기 끝
//exit;
echo " <script>alert('저장되었습니다.'); document.location.href='{$REQUEST_URI}'; </script>";
// echo ("<meta http-equiv='Refresh' content='0; URL=로그아웃시 이동주소'>");
// header("location:연결될페이지.php");
/*
header();를 이용하여 강제로 list.php3 파일로 이동시킵니다.
만약 강제로 페이지 변환을 시키지 않았을 때 리프레쉬를 하게 되면 동일한 값이 계속 저장되기 때문에 꼭 강제로 페이지를 이동하여 주어야 합니다.
*/
} // 정상신청 확인
?>
댓글목록
등록된 댓글이 없습니다.