Rumah >pembangunan bahagian belakang >tutorial php >Borang CakePHP
CakePHP ialah alat sumber terbuka yang digunakan untuk mengendalikan pengaturcaraan dinamik; ia menyediakan pelbagai jenis teg dalam binaan kepada pembangun untuk mengendalikan borang HTML. Borang tersebut merupakan salah satu teg yang disediakan oleh CakePHP untuk mengendalikan borang HTML dengan kebolehpercayaan atau kita boleh katakan ianya mudah dan selamat sama seperti rangka kerja PHP yang lain. Satu kelebihannya ialah kita boleh menjana elemen HTML yang berbeza dengan menggunakan CakePHP. Dalam CakePHP, kami boleh membuat borang dengan mudah mengikut keperluan kami dengan semua pengesahan yang diperlukan, reka letak yang berbeza dengan menggunakan teg dan kaedah dalam binaan.
IKLAN Kursus Popular dalam kategori ini PEMBANGUN PHP - Pengkhususan | 8 Siri Kursus | 3 Ujian Olok-olokMulakan Kursus Pembangunan Perisian Percuma Anda
Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain
Struktur ini mengandungi rekod perpustakaan yang kukuh tentang struktur untuk memainkan pelbagai aktiviti dalam CakePHP. Borang ini menumpukan pada penciptaan struktur secara berkesan dengan cara ini, supaya kelulusan, populasi semula dan konfigurasi boleh diperkemas. Dalam Borang, terdapat label berbeza bagi struktur yang akan kami gunakan untuk membuat struktur dalam penganjur format. Selain itu, Borang adalah fleksibel yang membayangkan ia akan melakukan hampir semua perkara dalam struktur yang anda perlu tunjukkan dengan menggunakan tanda baca dan strategi yang betul untuk memainkan hasil tertentu. Satu baris kod adalah lebih daripada mencukupi daripada kod HTML kerana kita perlu mengarang kod gergasi untuk membuat struktur, namun, dalam Borang, kita perlu mengarang tatabahasa yang mudah untuk struktur tersebut.
Sekarang mari kita lihat bagaimana kita boleh membuat borang dalam CakePHP dengan contoh seperti berikut. Pertama, kita perlu mencipta borang: Biasanya kita tahu bahawa apabila kita menggunakan kelas borang maka kita juga perlu mentakrifkan subkelas.
Sebagai Contoh:
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; } }
Penjelasan
Dalam contoh di atas, kami menggunakan tiga kaedah berbeza sebagai buildSchema, defaultvalidation dan jalankan seperti yang ditunjukkan.
Sekarang selepas itu, kita perlu menulis kod untuk memproses data permintaan di dalam pengawal seperti berikut.
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); } }
Selepas itu, kita perlu menetapkan nilai borang dan akhirnya, kita perlu mencipta HTML dengan borang mengikut keperluan kita.
Sekarang mari kita lihat contoh untuk pemahaman yang lebih baik seperti berikut.
Pertama, kita perlu mengkonfigurasi route.php seperti berikut.
<?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(); });
Sekarang kita perlu mencipta fail pengawal yang serupa dengan kod di atas, jadi buat fail pengawal dan tulis kod berikut.
<?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); } } ?>
Penjelasan
Dalam kod di atas, kami menulis kod untuk maklumat hubungan seperti negara dan jantina. Sekarang buat fail indeks dan tulis kod berikut.
<?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(); ?>
Selepas melaksanakan kod di atas, kami akan mendapat skrin berikut seperti yang ditunjukkan dalam tangkapan skrin berikut seperti berikut.
Andaikan kita memilih negara seperti India seperti yang ditunjukkan dalam tangkapan skrin berikut seperti berikut.
Sekarang masukkan beberapa butiran iaitu nama dan alamat seperti yang ditunjukkan dalam tangkapan skrin berikut seperti berikut.
Sekarang klik pada butang hantar dan kami mendapat mesej alu-aluan.
Sekarang mari kita lihat fungsi borang dalam CakePHP seperti berikut.
Pilihan Pilihan
Ia digunakan untuk mengembalikan elemen tatasusunan.
Sintaks
selectOptions( array $specifiedarrayelement(), array $parentsarrayelement(), boolean $showParentsnull, array $attributesarray() )
Penjelasan
Dalam sintaks di atas, kami menggunakan fungsi selectOption dengan parameter berbeza seperti format elemen, kumpulan elemen induk dan atribut HTML yang berbeza. Pada asasnya, ia mengembalikan tatasusunan.
Pilih
Ia digunakan untuk memilih elemen berformat.
Sintaks
select( string $Specified Name field, array $required options of array(), array $specified attributes array() )
Penjelasan
Dalam sintaks di atas, kami menggunakan pilih untuk berfungsi dengan parameter yang berbeza, medan nama yang ditentukan digunakan untuk memilih atribut nama, tatasusunan juga digunakan untuk memilih elemen dan ia mengembalikan elemen yang dipilih.
Butang
Ia digunakan untuk mencipta butang dengan jenis.
Sintaks
Button(string $specified name, array $optionsarray() )
Penjelasan
Inskripsi butang. Tidak dikodkan secara semula jadi HTML. Sekumpulan pilihan dan HTML menganggap dan ia mengembalikan teg butang.
Kotak semak
Dengan menggunakan fungsi ini, kami mencipta kotak semak di dalam borang mengikut keperluan kami.
Sintaks
Checkbox(string $Specifed name field, array $optionsarray() )
Penjelasan
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.
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); } }
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.
Atas ialah kandungan terperinci Borang CakePHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!