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.
Example http://ihang10.com/yahoo/show/test or
http://ihang10.com/yahoo/show/cakephp
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
-~----------~----~----~----~------~----~------~--~---