| 제목 | form 헬퍼 이용시 협업관계가 궁금합니다. | ||
|---|---|---|---|
| 글쓴이 | 제키 | 작성시각 | 2013/08/22 16:24:32 |
|
|
|||
|
<?php
$this->load->helper('form');
$attributes = array('class' => 'writeForm', 'id' => 'writeForm');
echo form_open('/update', $attributes);
$data = array(
'subject' => array(
'name' => 'subject',
'id' => 'subject',
),
'content' => array(
'name' => 'content',
'id' => 'content',
'style' => 'width:600px;height:300px;',
)
);
?>
<div>
제목
<?php echo form_input($data['subject'])?>
</div>
<div>
내용
<?php echo form_textarea($data['content'])?>
</div>
<div>
<?php echo form_submit('submit', '저장')?>
</div>
|
|||
| 다음글 | 다른나라 언어 DB에 인서트시 유니코드로 나오는 현상 (11) | ||
| 이전글 | $.post 한글 공백되는 문제 (11) | ||
|
변종원(웅파)
/
2013/08/22 17:16:11 /
추천
0
|
|
한대승(불의회상)
/
2013/08/22 17:33:21 /
추천
0
1장짜리 요약 가이드를 만들어 함께 이야기 합니다.
템플릿이 생소하여 디자이너분들이 어려워 하거든요. ^^ |
|
한대승(불의회상)
/
2013/08/22 17:40:59 /
추천
0
올려주신 소스코드는 디자이너들이 보기에 난해한 부분들이 많아 보입니다.
복잡하다 싶은 부분은 컨트롤러에서 처리 하시고 뷰에서는 최대한 간단하게 작성하는게 좋을것 같습니다. * Controler 부분
<?php
class Test extend CI_Controller {
function __construct()
{
parent::__construct();
$this->load->helper('form');
}
function index()
{
$data = array(
'attributes' => array('class' => 'writeForm', 'id' => 'writeForm'),
'data' => array(
'subject' => array(
'name' => 'subject',
'id' => 'subject',
),
'content' => array(
'name' => 'content',
'id' => 'content',
'style' => 'width:600px;height:300px;',
));
$this->load->view('test', $data);
}
}
* 뷰
<?php echo form_open('/update', $attributes);?>
<div>
제목 <?php echo form_input($data['subject'])?>
</div>
<div>
내용 <?php echo form_textarea($data['content'])?>
</div>
<div>
<?php echo form_submit('submit', '저장')?>
</div>
</form>
|
|
oursong
/
2013/08/22 18:00:24 /
추천
0
class나 id만 값만 상호간 주고 받으면 어떨까요? ㅎㅎㅎ
HTML로 출력된 페이지를 .html페이지로 하나 저장해서 보내주거나. css나 자바만 만지면 될 것 같은데요. 참고로 저 코드에서 배열로 잡힌 data는
$data = array(
'subject' => array(
'name' => 'subject',
'id' => 'subject',
'class' => 'test'
),
'content' => array(
'name' => 'content',
'id' => 'content',
'style' => 'width:600px;height:300px;',
'class' => 'testx'
)
);
로도 작동합니다.요즘 브라우저들 기능도 많던데 쩝. |
|
들국화
/
2013/08/22 18:16:10 /
추천
0
개인적으로 form 헬퍼를 안쓰는데요.
새로 익히려니 힘든것도 있고 해서 AR도 안쓰고요. 뷰가 좀더 의존적으로 되는거 같네요... 뷰는 데이타 뿌리고 입력 받는기능에 충실하는게 좋을듯 합니다. |
|
제키
/
2013/08/22 18:27:33 /
추천
0
저만 너무 똥고집 부리는건 아닌가해서 다른 분들은 어떻게 하시는지 여쭤봤습니다.
모든 분들 좋은 의견 감사합니다. 역시나 익숙해 질때까지 교육을 하고, 거부하면 '너 나가!' 로 결론 졌습니다. ^^ |
|
risa
/
2013/08/23 09:54:07 /
추천
0
저도 한대승님 의견에 동의 합니다.
폼헬퍼가 눈에 안들어오는 느낌이 없지 않아 있습니다. 가독성 측면에서는 복잡해 질수록 폼헬퍼가 더 간단 하지만 오히려 즉흥이며 간단하고 단일적인 폼은 하드 HTML이 더 가독성이 좋다고 생각 합니다. 더불어 단순히 뭐가 더 좋다는것보다 웅파님 의견처럼 한쪽이 일방적으로 '난 몰라요~' 하면 이미 협업이 아니죠. 난 일 다했으니 나머지는 너가 다 알아서 하든가. 하고 다른게 뭐인가요? |
|
들국화
/
2013/08/23 10:05:22 /
추천
0
논란일 많은 부분이지만 php는 Server Side Language 입니다.
그렇타면 누가 작업해야 하는지 좀더 분명해 지는게 아닐까 합니다. 뭐 프론트단에서 잘 해 주면은 아주 좋치요. 하지만 강요하기는 힘들어 보이네요. 위에도 적었지만 한대승님 과 비슷하게 저는 프론트와 백엔드가 연관성을 줄이고 자유롭게 하는게 좋치 않을까 하는 생각입니다. 그게 MVC 취지에도 맞지 않을까 생각 합니다. |
|
들국화
/
2013/08/23 11:31:16 /
추천
0
그런데 잘 몰라서 그러는데요. form헬퍼가 보안에 도움이 되나요?
|
|
한대승(불의회상)
/
2013/08/23 11:37:20 /
추천
0
들국화// 보안쪽은 잘 모르겠지만...
url헬퍼 form헬퍼 를 사용하게 되면 배포용 에플리케이션 작성에 도움이 됩니다. |
|
변종원(웅파)
/
2013/08/23 11:50:13 /
추천
0
들국화/ csrf 방지를 위해 config.php에서 설정을 했을 경우
폼헬퍼를 사용해야 제대로 구현이 됩니다. (매뉴얼 참고) 폼헬퍼가 보안에 도움이 되는게 아니라 csrf설정을 했을 경우 폼헬퍼를 사용해서 폼오픈을 해줘야 하는겁니다. ^^ |
|
들국화
/
2013/08/23 12:05:16 /
추천
0
웅파// 오~ 그런게 있었네요.
private function _csrf_set_hash()
{
if ($this->csrf_hash == '')
{
// If the cookie exists we will use it's value. We don't necessarily want to regenerate it with
// each page load since a page could contain embedded sub-pages causing this feature to fail
if (isset($_COOKIE[$this->csrf_cookie_name]) AND $_COOKIE[$this->csrf_cookie_name] != '')
{
$this->csrf_hash = $_COOKIE[$this->csrf_cookie_name];
}
else
{
$this->csrf_hash = md5(uniqid(rand(), TRUE));
}
}
return $this->csrf_hash;
}대충 찾아보니 랜덤 해시값을 쿠키로 구워서 사용 하는거 같네요. 역시.. ㅋㅋㅋ |
|
맥스
/
2013/08/23 12:52:32 /
추천
0
디자이너가 잘 모른다면
form_open 만 쓰셔도 csrf 는 작동하니 사용하시고 나머지는 디자이너에게 맞기시는게 서로 윈윈하는 게 아닐까 합니다. 다 프로그램에서 하려고 하면 힘들어요 ㅜㅜ |
드림위버나 여타 툴로 위 소스를 보게되면 디자인 요소는 해치지 않고 표현이 됩니다.
그런 목적으로 html 태그안에 <?php echo $변수?> 형태로 삽입을 하는 것이구요.
저 자체만으로도 아주 기본적인 템플릿입니다.
협업을 위한 템플릿 개념을 거부(?)하는 디자이너, 코더라면 재고해봐야 하지 않을까요?
디자이너가 디자인만 해야지 코딩은 무슨.. 이라고 하면 할 말이 없죠.
협조 하지 않는데 협업을 어떻게 할지... 답은 이미 나와있습니다.