Maison  >  Article  >  développement back-end  >  Formulaire CakePHP

Formulaire CakePHP

WBOY
WBOYoriginal
2024-08-29 12:58:521151parcourir

CakePHP est un outil open source utilisé pour gérer la programmation dynamique ; il fournit au développeur les différents types de balises intégrées pour gérer les formulaires HTML. Le formulaire est l'une des balises fournies par CakePHP pour gérer les formulaires HTML avec fiabilité ou nous pouvons dire qu'il est facilement et en toute sécurité identique aux autres frameworks PHP. Le seul avantage est que nous pouvons générer différents éléments HTML en utilisant CakePHP. Dans CakePHP, nous pouvons facilement créer des formulaires selon nos besoins avec toutes les validations requises, différentes mises en page en utilisant des balises et des méthodes intégrées.

PUBLICITÉ Cours populaire dans cette catégorie DEVELOPPEUR PHP - Spécialisation | Série de 8 cours | 3 tests simulés

Commencez votre cours de développement de logiciels libres

Développement Web, langages de programmation, tests de logiciels et autres

Qu'est-ce que le formulaire CakePHP ?

La structure contient de solides enregistrements de bibliothèque de structure pour exécuter les différentes activités dans CakePHP. Le formulaire se concentre sur la création efficace de la structure de cette manière, afin que l'approbation, le repeuplement et la configuration puissent être rationalisés. Dans Form, il existe différentes étiquettes de structure que nous utiliserons pour créer une structure au format organisateur. En outre, le formulaire est flexible, ce qui implique qu'il fera presque tout ce que vous devez montrer dans la structure en utilisant la bonne ponctuation et la bonne stratégie pour obtenir un résultat particulier. Une ligne de code est plus que suffisante que le code HTML puisque nous devons composer un code gigantesque pour créer la structure, cependant, dans Form, nous devons composer une grammaire simple pour la structure.

Comment créer un formulaire CakePHP ?

Voyons maintenant comment créer un formulaire dans CakePHP avec les exemples suivants. Tout d’abord, nous devons créer un formulaire : normalement, nous savons que lorsque nous utilisons une classe de formulaire, nous devons également définir la sous-classe.

Par exemple :

namespace App\Form;
use Cake\Form\Form;
use Cake\Form\Schema;
use Cake\Validation\Validator;
class sampleForm extends Form
{
protected function buildSchema(Schema $schema): Schema
{
return $schema->addField('Emp Name', 'string')
->addField('Emp Email', ['type' => 'string'])
->addField('Emp Address', ['type' => 'text']);
}
public function validationDefault(Validator $valid): Validator
{
$valid->minLength('Emp Name', 20)
->Emp Email('email');
return $valid;
}
protected function _run(array $data): bool
{
// Send an email.
return true;
}
}

Explication

Dans l'exemple ci-dessus, nous utilisons trois méthodes différentes : buildSchema, defaultvalidation et exécutons comme indiqué.

Maintenant, après cela, nous devons écrire le code pour traiter les données de demande à l'intérieur du contrôleur comme suit.

namespace App\Controller;
use App\Controller\AppController;
use App\Form\ sampleForm;
class SampleController extends AppController
{
public function index()
{
$sample= new sampleForm ();
if ($this->request->is('post')) {
if ($sample->execute($this->request->getData())) {
$this->Flash->success( ‘Welcome Done’);
} else {
$this->Flash->error('There is Problem');
}
}
$this->set('sample', $sample);
}
}

Après cela, nous devons définir les valeurs du formulaire et enfin, nous devons créer le HTML avec le formulaire selon nos besoins.

Voyons maintenant un exemple pour une meilleure compréhension comme suit.

Tout d'abord, nous devons configurer routes.php comme suit.

<?php
use Cake\Http\Middleware\CsrfProtectionMiddleware;
use Cake\Routing\Route\DashedRoute;
use Cake\Routing\RouteBuilder;
$routes->setRouteClass(DashedRoute::class);
$routes->scope('/', function (RouteBuilder $builder) {
$builder->registerMiddleware('csrf', new CsrfProtectionMiddleware([
'httpOnly' => true,
]));
$builder->applyMiddleware('csrf');
//$builder->connect('/pages',['controller'=>'Pages','action'=>'display', 'home']);
$builder->connect('register',['controller'=>'ContactForm','action'=>'index']);
$builder->fallbacks();
});

Maintenant, nous devons créer un fichier de contrôleur similaire au code ci-dessus, alors créez un fichier de contrôleur et écrivez le code suivant.

<?php
namespace App\Controller;
use App\Controller\AppController;
class ContactFormController extends AppController{
public function index(){
$country = array('India',England',Canada');
$this->set('country',$country);
$gender = array('Male','Female');
$this->set('gender',$gender);
}
}
?>

Explication

Dans le code ci-dessus, nous écrivons le code pour les informations de contact telles que le pays et le sexe. Créez maintenant un fichier d'index et écrivez le code suivant.

<?php
echo $this->Form->create(NULL,array('url'=>'/sampleForm'));
echo '<label for="name">Name</label>';
echo '<label for="country">Country</label>';
echo $this->Form->select('country',$country);
echo '<label for="gender">Gender</label>';
echo $this->Form->radio('gender ',$gender);
echo '<label for="address">Address</label>';
echo $this->Form->text ('address');
echo $this->Form->button('Submit');
echo $this->Form->end();
?>

Après l'exécution du code ci-dessus, nous obtiendrons l'écran suivant, comme indiqué dans la capture d'écran suivante.

Formulaire CakePHP

Supposons que nous sélectionnions un pays comme l'Inde, comme indiqué dans la capture d'écran suivante.

Formulaire CakePHP

Entrez maintenant quelques informations telles que le nom et l'adresse, comme indiqué dans la capture d'écran suivante.

Formulaire CakePHP

Cliquez maintenant sur le bouton Soumettre et nous recevons un message de bienvenue.

Fonctions du formulaire CakePHP

Voyons maintenant les fonctions de formulaire dans CakePHP comme suit.

SélectionnezOption

Il est utilisé pour renvoyer l'élément du tableau.

Syntaxe

selectOptions( array $specifiedarrayelement(), array $parentsarrayelement(),
boolean $showParentsnull, array $attributesarray() )

Explication

Dans la syntaxe ci-dessus, nous utilisons la fonction selectOption avec différents paramètres tels que le format d'un élément, le groupe d'éléments parent et différents attributs HTML. Fondamentalement, il renvoie le tableau.

Sélectionner

Il est utilisé pour sélectionner des éléments formatés.

Syntaxe

select( string $Specified Name field, array $required options of array(), array $specified attributes array() )

Explication

Dans la syntaxe ci-dessus, nous utilisons la sélection pour fonctionner avec différents paramètres, le champ de nom spécifié est utilisé pour sélectionner l'attribut de nom, le tableau est également utilisé pour sélectionner l'élément et il renvoie l'élément sélectionné.

Bouton

Il est utilisé pour créer un bouton avec un type.

Syntaxe

Button(string $specified name, array $optionsarray() )

Explication

L’inscription du bouton. Pas naturellement codé en HTML. Un groupe de choix et HTML attribue et renvoie la balise bouton.

case à cocher

En utilisant cette fonction, nous créons une case à cocher à l'intérieur du formulaire selon nos besoins.

Syntaxe

Checkbox(string $Specifed name field, array $optionsarray() )

Explication

In the above syntax, we use a checkbox function with different parameters such as name and array attributes. It returns the text input element.

Create

It is used to return the returned form element.

Syntax

create( mixed $nullmodel value , array $array() )

Explanation

Here we need to specify the name of the model and the array of specified HTML attributes.

File

By using this function, we can create the file and return the generated file.

Hidden

It is used to create the hidden file and returns the generated hidden input.

Input

It is used to create input elements and return the form widget.

Radio

It is used to create a set of radio buttons and returns the radio widget.

Submit

It is used to create a submit button element and it returns the HTML submit.

Values

Here we can set the default value for form by using setData() method as per our requirement as shown in the following code.

namespace App\Controller;
use App\Controller\AppController;
use App\Form\ContactForm;
class SampleController extends AppController
public function index()
{
$sample = new SampleForm();
if ($this->request->is('post')) {
if ($contact->execute($this->request->getData())) {
$this->Flash->success(' Welcome Done ');
} else {
$this->Flash->error('There is Problem');
}
}
if ($this->request->is('get')) {
$contact->setData([
'Emp of name' => 'sam',
Emp'email' => [email protected]'
]);
}
$this->set('sample', $sample);
}
}

Conclusion

We hope from this article you learn more about the CakePHP form. From the above article, we have taken in the essential idea of the CakePHP form and we also see the representation and example of the CakePHP form. From this article, we learned how and when we use the CakePHP form.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Autorisation CakePHPArticle suivant:Autorisation CakePHP