Which function in CodeIgniter displays all PHP errors occurring in the script?

  • display_errors()
  • show_php_errors()
  • log_php_errors()
  • log_errors()
In CodeIgniter, the display_errors() function is used to display all PHP errors occurring in the script. This is often helpful during development to catch and address errors promptly. Enabling this option can be done in the configuration files of CodeIgniter. It's crucial to note that displaying errors in a production environment should be avoided for security reasons, and error logs should be used instead.

When limiting the number of results returned by a query in CodeIgniter, the ________ method is employed.

  • fetch()
  • get_limit()
  • limit()
  • restrict()
To limit the number of results returned by a query in CodeIgniter, the limit() method is used. It helps in specifying the number of records to be retrieved from the database result set.

What is the role of hooks in modifying the behavior of CodeIgniter controllers?

  • Hooks allow you to tap into the core system and execute custom code at specific points
  • Hooks are a way to create custom middleware for controllers
  • Hooks are only applicable in models, not controllers
  • Hooks are used to define URL patterns for routing
Hooks in CodeIgniter enable developers to modify the behavior of the core system at specific execution points. They provide a mechanism to extend or override the default functionality without directly modifying the core files.

In CodeIgniter, how are data passed from the controller to a view?

  • By directly accessing controller variables in the view
  • Through global variables
  • Using the $this->data() method
  • Via the $this->load->vars() method
Data is passed from a controller to a view in CodeIgniter using the $this->load->vars() method. This method allows you to set variables that can be accessed within the view. Directly accessing controller variables in the view is not considered a best practice.

What distinguishes a stored XSS attack from a reflected XSS attack?

  • Reflected XSS requires user interaction, while stored XSS does not.
  • Reflected XSS stores data on the server, while stored XSS reflects data to the user.
  • Stored XSS involves persistent injection of malicious scripts, while reflected XSS involves immediate execution without persistence.
  • Stored XSS occurs in client-side code, while reflected XSS occurs in server-side code.
Stored XSS refers to attacks where the injected script is permanently stored on the target server, affecting all users who view the compromised page. Reflected XSS, on the other hand, involves the immediate execution of the injected script without persistent storage.

In CodeIgniter, what is the purpose of the $db['default'] array found in the database configuration file?

  • It contains the default database query for all models
  • It defines the default database connection parameters
  • It is used to set the default database driver
  • It specifies the default database name for all controllers
The $db['default'] array in CodeIgniter's database configuration file is used to define the default database connection parameters.

Describe the role of continuous integration in the context of unit testing in CodeIgniter.

  • Continuous integration helps automate the execution of unit tests in a consistent environment.
  • Continuous integration is irrelevant to unit testing in CodeIgniter.
  • Continuous integration is only necessary for large projects.
  • Unit testing and continuous integration are unrelated processes.
Continuous integration plays a crucial role in unit testing in CodeIgniter by automating the execution of tests in a consistent environment. This ensures that tests are run regularly, providing timely feedback on code changes and helping maintain code quality throughout development.

Ensuring that user inputs are __________ based on the expected data type is crucial in preventing SQL injection.

  • Encrypted
  • Sanitized
  • Typed
  • Validated
Ensuring that user inputs are typed, meaning they match the expected data type, is crucial in preventing SQL injection. This practice adds an additional layer of defense by ensuring that the input data is not only syntactically correct but also of the expected type.

When a CodeIgniter application's performance degrades, the primary debugging approach should focus on ______.

  • Caching the entire application
  • Identifying and optimizing queries
  • Increasing server memory
  • Upgrading CodeIgniter version
Performance degradation often relates to inefficient database queries. Identifying and optimizing these queries is a key step in improving the overall performance of a CodeIgniter application.

________ is a common protocol used alongside OAuth for secure authorization.

  • HMAC (Hash-based Message Authentication Code)
  • JWT (JSON Web Token)
  • OpenID Connect
  • SAML
OpenID Connect is a common protocol used alongside OAuth for secure authorization. It provides a way to verify the identity of the user and obtain additional user information during authentication.