I have two dropdown boxes if value of one dropdown changes then
according to that value of second dropdown changes i doing that using
ajax my problem is that in my edit view only one dropdown box is
displaying value from database not second one it is displaying blank
my controller code is as follows:
<? class EntriesController extends AppController{
var $name = 'Entries';
var $helpers = array('Html','Form','Javascript','Ajax');
var $components = array('RequestHandler');
function index(){
$query=mysql_query("select max(counter) from entries");
$row=mysql_fetch_array($query);
$co=$row[0];
$this->set('co',$co);
$name=$this->Session->read('User');
$query1=mysql_query("select id from users where username='$name'");
$row1=mysql_fetch_array($query1);
$user_id=$row1[0];
$this->set('user_id',$user_id);
$this->Entry->recursive = 1;
$this->set('entries', $this->Entry->findAll(null, null, array
('Section.id' => 'ASC','Submenu.submenu' => 'ASC')));
}
function view($id = null){
if (!$id){
$this->Session->setFlash('Invalid id for Entry.');
$this->redirect('/entries/index');
}
$this->set('entry', $this->Entry->read(null, $id));
}
function add()
{
$this->set('sections', $this->Entry->Section->find('list',array
('fields'=>'Section.section','Section.id')));
if (empty($this->data))
{
$this->render();
}
else
{
$this->data['Entry']['name'] = $this->data['Entry']['File']['name'];
$this->data['Entry']['type'] = $this->data['Entry']['File']['type'];
$this->data['Entry']['size'] = $this->data['Entry']['File']['size'];
if ($this->Entry->save($this->data))
{
$id=mysql_insert_id();
$query=mysql_query("select max(counter) from entries");
$row=mysql_fetch_array($query);
$co=$row[0]+1;
$q=mysql_query("update entries set counter=$co where id=$id");
if (move_uploaded_file($this->data['Entry']['File']['tmp_name'],
WWW_ROOT.'/files/' .$this->data['Entry']['File']['name']))
{
$this->Session->setFlash('The Entry has been saved');
$this->redirect('/entries/index');
}
else
{
echo "There was an error uploading the file, please try again!";
}
//{
//echo "File uploaded successfully";
//}
}
else
{
$this->Session->setFlash('Please correct errors below.');
$this->redirect('/entries/add');
}
}
}
------------------------------this is my edit
function-------------------------------------------
function edit($id = null){
$this->set('sections', $this->Entry->Section->find('list',array
('fields'=>'Section.section','Section.id','recursive' => 1,'page' =>
1,)));
if (empty($this->data)){
if (!$id){
$this->Session->setFlash('Invalid id for Entry');
$this->redirect('/entries/index');
}
$this->data = $this->Entry->read(null, $id);
}
else{
$query=mysql_query("select max(counter) from entries");
$row=mysql_fetch_array($query);
$co=$row[0]+1;
$q=mysql_query("update entries set counter=$co where id=$id");
if ($this->Entry->save($this->data)){
$this->Session->setFlash('The Entry has been saved');
$this->redirect('/entries/index');
}
else{
$this->Session->setFlash('Please correct errors below.');
}
}
}
----------i m using ajax
here-----------------------------------------------------------------
function update_select(){
if(!empty($this->data['Entry']['section_id'])){
$section_id = (int)$this->data['Entry']['section_id'];
$options = $this->Entry->Submenu->find('list',array('section_id'=>
$section_id,'recursive' => 1,'conditions'=>array('section_id'=>
$section_id),'page' => 1,'fields'=>'Submenu.submenu'));
$this->set('options',$options);
}
}
}?>
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"CakePHP" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/cake-php?hl=en
-~----------~----~----~----~------~----~------~--~---