안녕하세요 그누보드 write에대해 여쭤보려합니다
본문
안녕하세요 wr_1 의 값을 write_update.skin.php 에 GET방식으로 받아오려고
우선 테스트를 하기위해
write_update.skin.php 에
<?
echo $wr_1;
exit;
?> 를줘서 테스트를했습니다.
그러니 글등록을했는데 당연히
wr_1 값이 찍히긴하는데요 ㅠㅠ
bbs/write_update.skin.php 에서
// 사용자 코드 실행
@include_once($board_skin_path.'/write_update.skin.php');
@include_once($board_skin_path.'/write_update.tail.skin.php');
@include_once($board_skin_path.'/write_update.skin.php?wr_1='.$wr_1'); 를 줬는데 write_update.skin.php가 먹히질 않고 바로 리스트 화면으로 넘어가네요 뭐가 문제인지 좀알려주세요ㅠㅠ
!-->답변 3
위에 그냥 변수를 두시면
write_update.skin.php에 $wr_1 값이 그대로 전달돼요
include_once 라는게, 그페이지로 가는게 아니고,
지금 페이지에 include_once한 페이지 소스를 붙여넣는거라고 생각하시면 돼요
include 구문에서는 get 변수를 넘기는 방식을 사용할 수 없습니다.
개념적인 부분을 먼저 정리하신 후,
지금해결하고자 하는 문제를 다시 검토해보는 것이 좋을 것 같습니다.
$wr_1 = "aa";
include "t.php";
인 경우에,
t.php 에서도 $wr_1 이 사용이 가능하고 aa 값을 가집니다.
include "t.php?wr_1=aa"; 는 구문에러가 발생됩니다.
* php include 참고글
https://www.w3schools.com/php/php_includes.asp
* get 변수 처리
인클루드는 주소 뒤 파라메터를 인식하지 못합니다.
그래서 보통은 POST나 GET 방식을 사용하곤 합니다.
아니면 컴퍼니님 답변 처럼 <a> 태그를 이용해서 전달할 수도 있구요.
더 쉬운 방법으로는 아래 코드로 예를 들겠습니다.
<?php
$test = $write['wr_1'];
@include_once($board_skin_path.'/write_update.skin.php');
?>
위 코드처럼 코딩하시고 write_update.skin.php 에서 $test 변수가 잘 전달 되었나
echo로 테스트 해보시면 될 것 같습니다.
!-->