[TYPO3-dev] Problem with changing query according to post-parameter
David Bruchmann
typo3-dev at bruchmann-web.de
Fri Jul 31 18:28:19 CEST 2009
----- Ursprüngliche Nachricht -----
Von: Walter Seeberger <walk2moon at gmx.de>
Gesendet: Freitag, 31. Juli 2009 14:14:51
An: typo3-dev at lists.netfielders.de
CC:
Betreff: [TYPO3-dev] Problem with changing query according to
post-parameter
> Hello there,
>
> I try to react upon some post-parameters by changing data according to that in the model.ok:
>
> first I am doing some query and print the result trough my template.works!:
>
> <?php if($this->isNotEmpty()) { ?>
> <ul>
> <?php } ?>
> <?php for($this->rewind(); $this->valid(); $this->next()) {
> $entry = $this->current();
> ?>
> <li><?php $entry->printAsText('name'); ?></li>
> <?php } ?>
> <?php if($this->isNotEmpty()) { ?>
> </ul>
> <?php } ?>
>
>
> Now I am using my form to put in some param. My template calls this function in the controller:
>
> public function formCallAction(){
> $modelClassName = tx_div::makeInstanceClassName('tx_testext_model_data');
> $model = new $modelClassName($this);
> $model->load($this->parameters);
>
> $view = tx_div::makeInstance('tx_testext_view_resultlist');
> $view->exchangeArray($this->parameters);
> $view->controller($this);
> $view->render($this->configurations->get('resultlist'));
>
> $className = tx_div::makeInstanceClassName('tx_lib_translator');
> $translator = new $className($this, $view);
> return $translator->translateContent();
> }
>
> The result is: Fatal error: Call to a member function printAsText() on a non-object ... /template.php in line 9.
>
> Is anyone able to help me with this problem?
> Need some ;-)
Hi Walter first of all I propose to write the php like this:
<?php
if($this->isNotEmpty()) {
$content='<ul>';
for($this->rewind();
$this->valid();
$this->next()) {
$content.='<li>';
$this->printAsText( $this->current() ); ##
$content.='</li>';
}
}
$content .='</ul>';
echo $content;
}
?>
It's a lot clearer to read and I think avoids some faults.
Concerning your problem have a look at line with the ## at the end.
I'm not sure, but $this->current() logically has no function printAsText().
Best regards
David
More information about the TYPO3-dev
mailing list