2017-07-19 3 views
1

In CakePHP 3 habe ich Fehler Unerwartete Feld in POST-Daten. Eigentlich ist dieses Feld nicht in meiner Tabelle, aber ich möchte in Controller verwenden.In CakePHP 3 habe ich Fehler Unerwartete Feld in POST-Daten

+0

Willkommen löst meinen Freund zu Stackoverflow! Bitte zeigen Sie uns Ihren Code, wenn Sie möchten, dass wir Ihnen helfen! Sonst könnte deine Frage geschlossen werden, denn es ist zu weit zu beantworten. –

Antwort

3

Die Sicherheitskomponente in CakePHP ist nicht fehlerverzeihend. Wenn Sie ein Feld durch das zulassen möchten nicht durch die Sicherheitskomponente Hashing Prozess gehen sollte, müssen Sie die unlockedField Methode verwenden, die mit der FormHelper Klasse als solche kommt:

$this->Form->unlockField('field'); 

Wenn dies nicht funktioniert, werden Sie müssen uns mit dem entsprechenden Code

0

Ich erhielt den ähnlichen Fehler in CakePHP 3.4 Ich war mit der einfachen HTML-Formular und Eingabefelder. Ich habe die Eingabefelder Daten in Array übergeben. wie folgt: -

<form action="" method="post">  
<input name="data[1][category_1]" id="category_1"> 
</form> 

Dann habe ich einige R & D und festgestellt, dass wir die cakephp Form Helfer erstellen, um die Form und ihre Felder wie unten verwenden müssen: -

Bei Passform in Arraydaten

<?= $this->Form->create($user, ['url' => ['controller' => 'Users', 'action' => 'saveOrder']]); ?> 
    <?= $this->Form->input("Data.1.category_1"); ?> 
<?= $this->Form->end() ?> 

bei einfachen Eingabefelder können Sie den Code tun, wie unten

<?= $this->Form->create($user, ['url' => ['controller' => 'Users', 'action' => 'saveOrder']]); ?> 
    <?= $this->Form->input("category"); ?> 
<?= $this->Form->end() ?> 

Diese Arbeit mich bilden und die Fehler Unerwarteter Feld in POST-Daten in CakePHP 3.4