PHP에서 받은 변수값을 html로 보내서 출력하고 싶어요
php시작한지 4일정도 된 왕초보 개발자 입니다.
아이디 찾기를 만들고 있는데요
A.html에서 form 입력 후 B.php로 보내고 php에서 처리한 변수를 C.html로 보내고자 하는 과정입니다.
A.html 에서 입력받고
B.php 에서 처리 후
C.html 에서 "당신의 아이디는 OO입니다." 라고 보이게 하는 과정을 하고싶은거죠.(echo 사용X)
만들어 봤는데 B에서 C로 넘어가는 과정을 어떻게 해야할지 여쭈어봅니다 ㅠ
A.html
<form name="search_id_form" method="POST" action="b.php">
<input type="text" name="sname" class="form_control" placeholder="이름을 입력해주세요.">
<input type="text" name="smail" class="form_control" placeholder="이메일을 입력해주세요.">
<input type="submit" name="submit" class="btn_default btn_green" value="확인">
</form>
B.php
<?php
session_start();
include "../db_conn.php";
$sname=$_POST['sname'];
$smail=$_POST['smail'];
$sql="select id from user where name='$sname' AND email='$smail'";
$result = mysqli_query($conn, $sql);
$row=mysqli_fetch_array($result);
if(!$row){
echo "<script>alert('존재하지 않는 정보입니다');history.back();</script>";
}else{
header("location: c.html");
//echo "<script>alert('회원님의 ID는 ".$row[0]." 입니다.');history.back();</script>";
}
?>
c.html
<div class="text">아이디 찾기 결과</div>
<div class="result_area">
<div>회원님의 id는 <?php echo $row; ?> 입니다.</div>
</div>
</div>
<?php echo $row; ?> 에 $row 값을 넘기고 싶은데 출력이 되지 않습니다.
저부분은 id가 출력되는곳입니다. 어떻게 처리하면 될까요?
답변 4개 / 댓글 4개
}else{
header("location: c.html?id=찾은아이디");
이렇게 하시면 될 거 같은데요
나중에
<div>회원님의 id는 <?php echo $id; ?> 입니다.</div> 또는 $_REQUEST['id']
답변에 대한 댓글 1개
* 파일 확장자는 통일시켜주는 것이 일반적입니다. a.html -> b.html 또는 a.php -> b.php
.html 확장자에서도 php 스크립트가 처리되도록 웹서버에서 설정할 수 있습니다.
그누보드의 경우에도 글쓰기 페이지 : /bbs/write.php
글쓰기 처리 페이지 /bbs/write_update.php
로 php 로 통일되어 있습니다.
* C.html 에서 처리하려는 내용은 B.php 에서 처리하는 것이 일반적입니다.
<?php
session_start();
include "../db_conn.php";
$sname=$_POST['sname'];
$smail=$_POST['smail'];
$sql="select id from user where name='$sname' AND email='$smail'";
$result = mysqli_query($conn, $sql);
$row=mysqli_fetch_array($result);
if(!$row){
echo "<script>alert('존재하지 않는 정보입니다');history.back();</script>";
}else{
header("location: c.html");
//echo "<script>alert('회원님의 ID는 ".$row[0]." 입니다.');history.back();</script>";
}
?>
<div class="text">아이디 찾기 결과</div>
<div class="result_area">
<div>회원님의 id는 <?php echo $row['id']; ?> 입니다.</div>
</div>
</div>
* w3schools 사이트의
HTML Froms 부분과 https://www.w3schools.com/html/html_forms.asp
PHP Forms 부분 https://www.w3schools.com/php/php_forms.asp
을 살펴보면 참고가 될 수 있습니다.
답변에 대한 댓글 1개
결국 저도 이방식으로 처리했습니다 ㅠㅠ 답변감사합니다!!
값을 별도 페이지에서 처리하실거면 html에서 ajax로 해결하시는게 어떤가요
답변에 대한 댓글 1개
b랑 c를 별도의 파일로 만드실 이유가 없어보입니다.
하나로 하셔도되고
만약 별도의 파일로 둬야한다면 b php에서 또 다시 폼으로 c html에 값을 전송하세요.
답변에 대한 댓글 1개
그렇다면 b.php 에서 <form>을 또 만들어서 c에 전송하면 될까요?
답변을 작성하려면 로그인이 필요합니다.
이 방식이 제가 찾던거였어요!