Я новичок в cakephp и пытаюсь просто отобразить данные формы после их публикации. Я хотел бы напечатать что-то в «add.ctp», которое затем перенаправляет в «index.ctp», где должна отображаться только что набранная информация.
Причина, по которой я это делаю, заключается в том, что мне нравится выводить переменные и формы в разных местах в моей программе для целей отладки. Я склонен много работать с данными, которые необходимо преобразовать или манипулировать, поэтому мне нравится проверять и убедиться, что каждая часть выполняет свою работу правильно. Я новичок в CakePHP, поэтому я просто пытаюсь понять, как я могу это сделать.
Вот код для add.ctp, куда вводится информация.
View\Mysorts\add.ctp
<h1>Add Numbers</h1>
<?php
echo $this->Form->create('Mysort');
echo $this->Form->input('original');
echo $this->Form->end('Add Numbers');
?>
Вот моя функция в контроллере
Controller\MysortsController.php
<?php
class MysortsController extends AppController {
public $helpers = array('Html', 'Form');
public function index() {
$this ->set('mysorts', $this->Mysort->find('all'));
}
public function add() {
if($this->request->is('post')) {
Configure::read();
pr($this->data); //attempting to print posted information
$this->redirect(array('action' => 'index'));
}
}
function isempty(){
$mysorts = $this->Mysort->find('all');
$this->set('mysorts', $mysorts);
}
}
?>
И, наконец, вот мой индексный файл, в котором я хотел бы отобразить опубликованную информацию.
View\Mysorts\index.ctp
<h1>Sorted Entries</h1>
<?php
echo $this->Html->link("Add List", array('controller'=>'mysorts', 'action' => 'add'));
if (!empty($mysorts)) {
?>
<table>
<tr>
<th>ID</th>
<th>Original</th>
<th>Sorted</th>
</tr>
<?php foreach ($mysorts as $mysort): ?>
<tr>
<td><?php echo $mysort['Mysort']['id']; ?></td>
<td>
<?php echo $mysort['Mysort']['original']; ?>
</td>
<td> <?php echo $mysort['Mysort']['sorted']; ?>
</td>
</tr>
<?php endforeach;
} else {
echo '<p>No results found!</p>';
}
?>
</table>