/----------------------------- Thank You for your help Geoff.
Although I can't seem to quite get it... I am not sure if I am using
the helper the proper way.
Updated Views:
Index View
<?=$ajax->form(array('action'=>'/yahoo/showresult'), 'post',
array('update'=>'questionID','loading'=>"Toggle.display('spinner');",'complete'=>"Toggle.display('spinner');stripe();"))?
>
<?=$html->image('spinner.gif', array('alt'=>'spinner',
'id'=>'spinner', 'style'=>'display:none;'))?>
<fieldset>
<label for="showresult">Search:</label>
<?=$html->input('Yahoo/yahoosearch',array('type' => 'text', 'size'
=> '25'))?>
<?=$html->submit('Find')?>
</fieldset>
<div id="questionID"></div>
</form>
showresult View
<?php
// app/views/yahoo/show.thtml
foreach ($question as $answer)
{
echo "<h3><a href='{$answer->ClickUrl}'>{$answer->Title}</a></h3>";
echo "{$answer->Summary}
[<a href='{$answer->CacheUrl}'>Cached Version</a>]";
}
?>
Yahoo_Controller
<?php
// app/controllers/yahoo_controller.php
class YahooController extends AppController
{
var $helpers = array('Html', 'Ajax');
var $layout = 'yahoo';
function index()
{
}
function showresult(){
if(!empty($this->data) && isset($this->data['Yahoo']
['yahoosearch']))
{
$yahoosearch = $this->data['Yahoo']['yahoosearch'];
$yahoo = new
Zend_Service_Yahoo("9Jd3X77V34H7qkFUr4RPUBOe5Uw77BnFogvFtRymuyW7pWMxwcadkV.Ag4QwluKU7tu9Hwo-");
$question = $yahoo->webSearch('$yahoosearch');
return $question;
}
else {
$this->render('index');
}
}
function show($yahoosearch = null)
{
$this->set('question', $this->Yahoo->getResultsby($yahoosearch));
}
}
?>
Any Help on this would be greatly appreciated again thanks for your
time.
On Sep 24, 10:24 pm, Geoff Ford <[EMAIL PROTECTED]> wrote:
> Instead of function showresult($yahoosearch = null)
> use
> function showresult(){
> if(!empty($this->data) && isset($this->data['Yahoo']['yahoosearch]))
> {
> $yahoosearch = $this->data['Yahoo']['yahoosearch];
> // do rest of searching code
> } else {
> // show input form
> }
>
> }
>
> Basically anything POSTed to your controller will be in the $this->data array
> if you use the standard helper functions to create the
>
> input fields.
>
> Geoff
> --http://lemoncake.wordpress.com
>
> On Sep 25, 6:52 am, seacloud9 <[EMAIL PROTECTED]> wrote:
>
> > Issues with $html->input
>
> > I am trying to pass a variable from the view (index) to the view
> > (show) using the controller Yahoo. I have only been successful with
> > this when I put the search content in the url.
> > Examplehttp://ihang10.com/yahoo/show/testorhttp://ihang10.com/yahoo/show/cak...
> > I am new to cakePHP and I have not been able to find a way to pass the
> > variable trough an input box. I know I am close I just can't seem to
> > complete this problem. It could be that I am using the wrong helper.
> > Your advice on this issue would be greatly appreciated. STUCK..
> > Not working:http://ihang10.com/yahoo?
>
> > Here is the code for the working version (that does not have an input
> > box....)
> > <!---------------------------------------------
> > Model Yahoo:
>
> > <?php
> > // app/models/yahoo.php
> > vendor('zend_loader_yahoo');
>
> > class Yahoo extends AppModel
> > {
> > var $useTable = false;
>
> > function __construct()
> > {
> > ZendLoader::load('Service/Yahoo');
> > }
>
> > function getResultsby($yahoosearch)
> > {
> > $result = array();
>
> > if (!empty($yahoosearch))
> > {
> > $yahoo = new
> > Zend_Service_Yahoo("9Jd3X77V34H7qkFUr4RPUBOe5Uw77BnFogvFtRymuyW7pWMxwcadkV.Ag4QwluKU7tu9Hwo-");
> > $result = $yahoo->webSearch($yahoosearch);
>
> > }
>
> > return $result;
> > }}
>
> > ?>
>
> > Controller Yahoo_Controller
>
> > <?php
> > // app/controllers/yahoo_controller.php
>
> > class YahooController extends AppController
> > {
>
> > var $helpers = array('Html', 'Ajax');
> > var $layout = 'yahoo';
>
> > function index()
> > {
> > }
>
> > function showresult($yahoosearch = null)
> > {
> > $this->set('question', $this->showresult($yahoosearch));
> > $yahoo = new
> > Zend_Service_Yahoo("9Jd3X77V34H7qkFUr4RPUBOe5Uw77BnFogvFtRymuyW7pWMxwcadkV.Ag4QwluKU7tu9Hwo-");
> > $result = $yahoo->webSearch('$question');
> > return $result;
> > $this->log('Something broke');
> > }
>
> > function show($yahoosearch = null)
> > {
> > $this->set('question', $this->Yahoo->getResultsby($yahoosearch));
> > }
>
> > }
>
> > ?>
>
> > View Show:
>
> > <?php
> > // app/views/yahoo/show.thtml
> > foreach ($question as $answer)
> > {
> > echo "<h3><a href='{$answer->ClickUrl}'>{$answer->Title}</a></h3>";
> > echo "{$answer->Summary}
> > [<a href='{$answer->CacheUrl}'>Cached Version</a>]";}
>
> > ?>
>
> > This is the AJAX version that I just can't seem to make work:
>
> > View: Index
>
> > <?=$ajax->form(array('action'=>'/yahoo/showresult'), 'post',
> > array('update'=>'yahoosearch','loading'=>"Toggle.display('spinner');",'complete'=>"Toggle.display('spinner');stripe();"))?
>
> > <?=$html->image('spinner.gif', array('alt'=>'spinner',
> > 'id'=>'spinner', 'style'=>'display:none;'))?>
> > <fieldset>
> > <label for="showresult">Search:</label>
> > <?=$html->input('Yahoo/yahoosearch',array('type' => 'text', 'size'
> > => '25'))?>
> > <?=$html->submit('Find')?>
> > </fieldset>
> > <div id="yahoosearch"></div>
> > </form>
>
> > View: ShowResult
>
> > <?php
> > // app/views/yahoo/show.thtml
> > foreach ($question as $result)
> > {
> > echo "<h3><a href='{$result->ClickUrl}'>{$result->Title}</a></h3>";
> > echo "{$result->Summary}
> > [<a href='{$result->CacheUrl}'>Cached Version</a>]";}
>
> > ?>
>
> > Yahoo_Controller:
>
> > <?php
> > // app/controllers/yahoo_controller.php
>
> > class YahooController extends AppController
> > {
>
> > var $helpers = array('Html', 'Ajax');
> > var $layout = 'yahoo';
>
> > function index()
> > {
> > }
>
> > function showresult($yahoosearch = null)
> > {
> > $this->set('question', $this->showresult($yahoosearch));
> > $yahoo = new
> > Zend_Service_Yahoo("9Jd3X77V34H7qkFUr4RPUBOe5Uw77BnFogvFtRymuyW7pWMxwcadkV.Ag4QwluKU7tu9Hwo-");
> > $result = $yahoo->webSearch('$question');
> > return $result;
> > $this->log('Something broke');
> > }
>
> > function show($yahoosearch = null)
> > {
> > $this->set('question', $this->Yahoo->getResultsby($yahoosearch));
> > }
>
> > }
>
> > ?>
>
> > I belive it is really close but as I said I am having trouble passing
> > the variable and I am not sure if I am using the correct helper. Your
> > advice and input would be greatly appreciated. Thank You.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Cake
PHP" 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
-~----------~----~----~----~------~----~------~--~---