2012-11-06 4 views
0

필자는 데이터베이스에있는 정보를 저장하는 폼을 만들려고 노력하고 있습니다 ... 소리가 꽤 간단하지만 지저분한 문서가 있거나 (너무 똑똑하지는 않습니다), 제출시 다른 매개 변수를 보내고 싶습니다. 측면 그래서 ....joomla를 사용하여 데이터베이스에 정보를 저장하는 양식을 설정하는 방법은 무엇입니까?

그들을 잡아 데이터베이스에서 약간의 정보를 저장, 나는이 한 : 내 component/views/myview/tmpl/default.php

을 나는이 쓴 : 그런 다음

<form action="index.php"> 
<input type="submit" value="test" /> 
</form> 

를, I는 갔다 내 파일에/mycomponent/view/component/view.html에 1,나는이 수행

$this->get('SaveClient'); 

내가 (단지 노력에 대한) 이런 짓을 내 모델

:

public function getSaveClient(){ 

    $query =" 
     Insert into client (`id_client` ,`test`) 
     VALUES 
     (NULL , '1') 
    "; 
    $db = & JFactory::getDBO(); 
    $db->Execute($query); 
} 

하지만 여전히 .. 나던 작품, 어떤 생각이 어떻게 작동하게하는 방법을? ?

감사합니다.

답변

2

테이블 이름을 올바르게 정의하지 않았습니다. #__tablename이어야합니다. 일단 시도한 후에도 여전히 작동하지 않으면 아래 코드를 대신 사용해보십시오.

public function getSaveClient($test){ 
    $db = JFactory::getDBO(); 
    $data = new stdClass(); 
    $data->id_client = null; 
    $data->test = $test; 
    $db->insertObject('#__tablename', $data, 'id_client'); 
} 
+0

어떻게 전화를 걸 수 있습니까? odel이 논쟁을 보내고 있습니까? : - 일부 문서에서 본 것처럼 - s는 가능하지 않습니다. 다른 사람들에게서 보았 듯이 ... Ive는 시도했지만 여전히 아무것도 아닙니다. 어떤 생각입니까? – jpganz18

1

레이아웃 default.php 양식

<form action="<?php echo JRoute::_('index.php?option=com_example&view=example&layout=default'); ?>" method="post" name="adminForm"> 
<input size="60" type="text" name="settings[key]" id="settings[key]" value="<?php echo (isset ($this->settings ['key']) ? htmlspecialchars ($this->settings ['key']) : ''); ?>" /> 
// More html entites. 
<input type="hidden" name="task" value="" /> 
</form> 

귀하의 view.html.php // 클래스

public function display ($tpl = null) 
    { 
     $document = &JFactory::getDocument(); 
     $document->addStyleSheet ('components/com_example/assets/css/example.css'); 

     $model = &$this->getModel(); 
     $this->settings = $model->getSettings(); 
     $this->form = $this->get ('Form'); 
     $this->addToolbar(); 
     parent::display ($tpl); 
    } 

귀하의 모델 모델 클래스

public function saveSettings() 
    { 
     //Get database handle 
     $db = $this->getDbo(); 
     $api_settings = array(); 
     $mainframe = JFactory::getApplication(); 
     //Read Settings 
     $settings = JRequest::getVar ('settings'); 
       //Insert new settings 
      foreach ($settings as $k => $v) 
      { 

      $sql = "INSERT INTO #__yourtable (setting, value)" . " VALUES (" . $db->Quote ($k) . ", " . $db->Quote ($v) . ")"; 
      $db->setQuery ($sql); 
      $db->query(); 
      } 
       } 
같은
관련 문제