How does the 'Controller' in MVC architecture communicate with the 'Model'?

  • Direct function calls
  • Session variables
  • Through events and listeners
  • Using RESTful APIs
In CodeIgniter's MVC architecture, Controllers interact with Models through events and listeners. Events triggered in the Controller are listened to by the Model, allowing communication without direct coupling.

Which directory do you typically find Helpers stored in a standard CodeIgniter project?

  • /application/helpers
  • /application/libraries
  • /system/helpers
  • /system/libraries
CodeIgniter Helpers are typically stored in the /application/helpers directory. This separation allows for easy organization and customization of helpers for specific projects. They should not be placed in the system directory, which is reserved for core framework files.

In CodeIgniter, how is a controller differentiated when handling AJAX requests as opposed to standard requests?

  • AJAX requests must be routed to a different controller
  • AJAX requests must have a specific parameter in the URL
  • Controllers check the 'X-Requested-With' header for 'XMLHttpRequest'
  • Controllers do not differentiate between AJAX and standard requests
In CodeIgniter, controllers can differentiate between AJAX and standard requests by checking the 'X-Requested-With' header. If the header is set to 'XMLHttpRequest,' it indicates an AJAX request. This allows controllers to customize their response based on the type of request being made.

In what scenario would you use the Active Record Class's batch update feature?

  • The batch update feature is not supported in CodeIgniter
  • When updating a single record with multiple values
  • When updating multiple records with the same data
  • When updating records based on a condition
The batch update feature is useful when you need to update multiple records with the same data efficiently. It helps reduce the number of queries executed, improving performance in scenarios where bulk updates are required.

When integrating a payment gateway, what is the role of an API key?

  • Authenticate the user
  • Securely transmit payment data
  • Validate credit card expiration
  • Verify transaction status
In payment gateway integration, an API key is used to authenticate and authorize the user, ensuring secure communication between the application and the payment gateway. It serves as a unique identifier for the application and helps control access to the payment gateway API.

In CodeIgniter, migrations are typically stored in the ________ directory.

  • app/Migrations
  • application/Migrations
  • database/Migrations
  • system/Migrations
CodeIgniter migrations are typically stored in the database/Migrations directory. It's the default location where migration files are expected to be located.

In OAuth 2.0, ________ is used to obtain consent from the user for accessing their resources.

  • Authorization Code
  • Authorization Grant
  • Client Credentials
  • Implicit Grant
In OAuth 2.0, the Authorization Grant type is used to obtain consent from the user for accessing their resources. This involves exchanging an authorization code for an access token.

CodeIgniter's 'xss_clean' function is used for what purpose?

  • Encrypting sensitive user data
  • Ensuring secure session handling
  • Preventing cross-site scripting (XSS)
  • Removing HTML and JavaScript tags
'xss_clean' in CodeIgniter is used to prevent cross-site scripting attacks by removing HTML and JavaScript tags from input data.

How does implementing a Content Security Policy (CSP) help in the context of file uploads?

  • Enhances file compression, improves overall system performance
  • Prevents cross-site scripting (XSS) attacks, restricts unauthorized file access
  • Simplifies file validation, streamlines upload workflow
  • Speeds up file upload process, reduces server load
Implementing a Content Security Policy (CSP) is crucial in preventing cross-site scripting (XSS) attacks and restricting unauthorized file access. It provides an additional layer of security by controlling which sources are allowed to load, mitigating the risk of malicious file uploads.

What is the significance of 'HTTP Strict Transport Security' (HSTS) in CodeIgniter?

  • Enforces the use of secure connections by instructing browsers to only connect over HTTPS
  • Enhances session management for improved user experience
  • Facilitates client-side validation for form inputs
  • Improves database performance through optimized queries
'HTTP Strict Transport Security' (HSTS) in CodeIgniter enforces the use of secure connections by instructing browsers to only connect over HTTPS. This helps prevent man-in-the-middle attacks and enhances overall application security.