What is a 'custom exception' and when should it be used?

  • A user-defined exception created to handle specific error conditions
  • An exception that is never used in practice
  • An exception that occurs only in custom-built applications
  • An exception thrown by the programming language itself
A 'custom exception' is an exception defined by the programmer to handle specific error conditions in their code. It should be used when there are unique error scenarios that require special handling beyond the standard exceptions provided by the language.

In CodeIgniter, setting the ________ parameter to FALSE disables auto-commit for the transaction.

  • auto_commit
  • commit_mode
  • disable_auto_commit
  • transaction_auto
Setting the auto_commit parameter to FALSE in CodeIgniter disables auto-commit for the transaction. This means changes won't be automatically saved to the database, giving you more control over when to commit.

In the context of XSS, what is the purpose of Content Security Policy (CSP)?

  • Control access to databases
  • Encrypt sensitive data
  • Restrict the sources of content that can be loaded
  • Validate form inputs
Content Security Policy (CSP) is a security standard that helps prevent XSS attacks by allowing website owners to specify the trusted sources of content. It restricts the execution of scripts to trusted domains, reducing the risk of malicious script injection.

What role does escaping user inputs play in securing a database against SQL injection?

  • Escaping prevents malicious SQL code from being executed by treating special characters appropriately
  • Escaping user inputs helps to encrypt data during transmission
  • It allows direct execution of user inputs in SQL queries
  • It has no impact on security
Escaping user inputs is crucial as it involves modifying special characters to make them safe for inclusion in SQL statements, preventing attackers from injecting malicious code.

In CodeIgniter, unit tests are typically run using the ________ tool.

  • CodeTester
  • PHPUnit
  • Selenium
  • UnitCheck
PHPUnit is the primary testing tool used in CodeIgniter for running unit tests. It provides a robust framework for testing PHP code, including features for assertions and mocking.

To configure SMTP settings for sending emails in CodeIgniter, one must edit the ________ file.

  • config.php
  • email.php
  • settings.php
  • smtp.php
In CodeIgniter, SMTP settings for sending emails are configured in the email.php configuration file. This file allows you to specify various email-related settings, including the SMTP server configuration.

How does CodeIgniter's Content Security Policy (CSP) enhance web application security?

  • Enhances database encryption for improved security
  • Mitigates Cross-Site Scripting (XSS) attacks by restricting the sources of content
  • Provides a user authentication layer for added security
  • Speeds up page loading through optimized caching
CodeIgniter's Content Security Policy (CSP) helps mitigate Cross-Site Scripting (XSS) attacks by restricting the sources of content. This adds an extra layer of protection against malicious scripts injected into web pages.

How does a 'stack trace' aid in debugging exceptions?

  • A stack trace is a tool for creating new function calls during debugging.
  • A stack trace is irrelevant in debugging exceptions.
  • A stack trace is only useful for tracing the execution of loops in the code.
  • A stack trace provides a detailed report of the function calls and their sequence leading to the point where an exception occurred.
A stack trace is a crucial tool in debugging as it reveals the entire call stack leading to the point where the exception was thrown. It assists developers in identifying the flow of execution, making it easier to pinpoint and fix issues.

What is the primary purpose of a Model in CodeIgniter?

  • Data manipulation
  • Database connectivity
  • File handling
  • User interface design
In CodeIgniter, a Model is primarily used for database connectivity. It facilitates data manipulation and interacts with the database, ensuring separation of concerns in the MVC architecture.

For enhanced security, file upload paths should be kept outside the ________ directory.

  • application
  • public
  • root
  • system
Keeping file upload paths outside the "application" directory is crucial for security. The "application" directory contains sensitive files related to the CodeIgniter application, and exposing it can pose a security risk.

In the context of the Email Class, what is the significance of setting MIME types?

  • MIME types are irrelevant when dealing with emails.
  • MIME types are used to determine the file extension of attachments.
  • MIME types define the media type of the email content, such as text or HTML.
  • MIME types help in compressing email attachments.
Setting MIME types in the Email Class is crucial for defining the media type of the email content. For example, specifying 'text/html' indicates that the email contains HTML content. It ensures proper rendering on the recipient's end.

Which method is used in CodeIgniter to encrypt and decrypt data securely?

  • Cipher library
  • Encryption is not supported
  • OpenSSL library
  • mcrypt library
CodeIgniter uses the OpenSSL library for secure encryption and decryption of data. OpenSSL provides a robust set of cryptographic functions, and CodeIgniter leverages it to ensure the confidentiality and integrity of sensitive information. Avoiding outdated libraries like mcrypt is crucial for maintaining security.