Στις περισσότερες περιπτώσεις, για να εκτελέσει ο κώδικάς μας μία λειτουργία, θα πρέπει να δεχθεί δεδομένα. Για την καταχώρηση δεδομένων σε ένα website χρησιμοποιούμε τις φόρμες.
Ας δημιουργήσουμε λοιπόν ένα module που θα δημιουργεί μία φόρμα για την καταχώρηση δεδομένων.
Για να κρατήσουμε το παράδειγμα απλό, δεν θα αποθηκεύσουμε τα δεδομένα που καταχωρούμε στη βάση δεδομένων του site αλλά θα τα εμφανίσουμε με ένα μήνυμα στην ίδια σελίδα.
Χρειάζεται να δημιουργήσουμε:
- Ένα αρχείο info με πληροφορίες για το Module μας, ώστε να το αναγνωρίζει το σύστημα.
- Ένα αρχείο με τον απαραίτητο κώδικα PHP που θα δημιουργεί τη φόρμα μας.
- Ένα αρχείο routing που θα πυροδοτεί την εκτέλεση του κώδικά μας.
Ας τα δούμε ένα ένα αναλυτικά:
1. Το αρχείο Info
Μέσα στο φάκελο modules του website, αν δεν έχουμε δημιουργήσει ήδη, δημιουργούμε φάκελο με όνομα custom για τα modules που θα δημιουργήσουμε.
Μέσα στο φάκελο custom δημιουργούμε έναν νέο φάκελο με όνομα simple_form, για τα αρχεία του Module και μέσα σε αυτόν, ένα αρχείο απλού κειμένου με όνομα: simple_form.info.yml
Μέσα σε αυτό το αρχείο, χρησιμοποιώντας έναν code editor θα γράψουμε:
Αυτές οι πληροφορίες θα εμφανίζονται στη λίστα των Modules του site μας και είναι αρκετές, για να ενεργοποιήσουμε το Module ακόμα κι αν αυτή τη στιγμή δεν κάνει απολύτως τίποτα.
2. Το αρχείο SimpleForm.php
Για να δημιουργηθεί η φόρμα στη σελίδα μας θα πρέπει να γράψουμε τον αντίστοιχο κώδικα σε PHP.
Για το σκοπό αυτό, μέσα στο φάκελο simple_form, δημιουργούμε έναν φάκελο src και μέσα σε αυτόν έναν φάκελο Form.
Μέσα στον φάκελο Form, δημιουργούμε ένα νέο αρχείο με όνομα SimpleForm.php με το παρακάτω περιεχόμενο:
3. Το αρχείο routing
Όπως είπαμε, το module μας θα εμφανίζει μία απλή φόρμα σε μια σελίδα του website.
- Θα πρέπει να δημιουργήσουμε και ένα αρχείο μέσα στον αρχικό φάκελο του module simple_form, με όνομα simple_form.routing.yml (module_name.routing.yml) και με περιεχόμενο όπως στην παρακάτω εικόνα:
4. Η φόρμα
Αφού ενεργοποιήσουμε το module στο site μας, μπαίνοντας στη σελίδα /simple-form, θα δούμε τη φόρμα. Συμπληρώνουμε κάποια στοιχεία στα πεδία της:
Πατώντας υποβολή, τα στοιχεία υποβάλλονται και εμφανίζονται σε ένα πλαίσιο μηνύματος στην ίδια σελίδα:
Σε επόμενο παράδειγμα, θα δούμε πώς μπορούμε να αποθηκεύουμε τα δεδομένα που υποβάλλονται στη φόρμα, στη βάση δεδομένων του site και να τα επεξεργαζόμαστε.