mysqli_driver::embedded_server_start
mysqli_warning
mysqli_driver
PHP Manual

# mysqli_driver::$report_mode

# mysqli_report

(PHP 5)

mysqli_driver::$report_mode -- mysqli_report — Active ou désactive les fonctions de rapport interne

### Description

Style orienté objet

int $mysqli_driver->report_mode ;

Style procédural

bool mysqli_report ( int `$flags` )

Fonction utile pour améliorer les requêtes durant le développement du code ainsi que lors des tests. Suivant les drapeaux fournis, elle rapporte les erreurs depuis les appels aux fonctions MySQLi, ou depuis les requêtes qui n'utilisent pas d'index (ou utilise un mauvais index).

### Liste de paramètres

`flags`

  Drapeaux supportés
  Nom | Description
  --- | ---
  `MYSQLI_REPORT_OFF` | Désactive les rapports
  `MYSQLI_REPORT_ERROR` | Rapporte les erreurs depuis les appels aux fonctions mysqli
  `MYSQLI_REPORT_STRICT` | Lance une exception mysqli_sql_exception pour les erreurs, au lieu d'émettre des alertes
  `MYSQLI_REPORT_INDEX` | Rapporte si aucun index ou un mauvais index est utilisé dans une requête
  `MYSQLI_REPORT_ALL` | Défini toutes les options (rapporte tout)

### Valeurs de retour

Cette fonction retourne `TRUE` en cas de succès ou `FALSE` si une erreur survient.

### Historique

Version | Description
--- | ---
5.3.4 | Modification du mode de reporting : il est maintenant pour chaque requête, plutôt que pour chaque processus.
5.2.15 | Modification du mode de reporting : il est maintenant pour chaque requête, plutôt que pour chaque processus.

### Exemples

Exemple #1 Style orienté objet

`<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
/* Vérification de la connexion */
if (mysqli_connect_errno()) {
printf("Echec de la connexion : %s\n", mysqli_connect_error());
exit();
}
/* Activation du reporting */
$driver = new mysqli_driver();
$driver->report_mode = MYSQLI_REPORT_ALL;
try {
/* cette requête devrait rapporter une erreur */
$result = $mysqli->query("SELECT Name FROM Nonexistingtable WHERE population > 50000");
/* cette requête devrait rapporter un mauvais index */
$result = $mysqli->query("SELECT Name FROM City WHERE population > 50000");
$result->close();
$mysqli->close();
} catch (mysqli_sql_exception $e) {
echo $e->__toString();
}
?>`

Exemple #2 Style procédural

`<?php
/* Activation du reporting */
mysqli_report(MYSQLI_REPORT_ALL);
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
/* Vérification de la connexion */
if (mysqli_connect_errno()) {
printf("Echec de la connexion : %s\n", mysqli_connect_error());
exit();
}
/* cette requête devrait rapporter une erreur */
$result = mysqli_query("SELECT Name FROM Nonexistingtable WHERE population > 50000");
/* cette requête devrait rapporter un mauvais index */
$result = mysqli_query("SELECT Name FROM City WHERE population > 50000");
mysqli_free_result($result);
mysqli_close($link);
?>`

### Voir aussi

- mysqli_debug() - Effectue des actions de déboguage
- mysqli_dump_debug_info() - Écrit les informations de déboguage dans les logs
- mysqli_sql_exception
- set_exception_handler() - Définit une fonction utilisateur de gestion d'exceptions
- error_reporting() - Fixe le niveau de rapport d'erreurs PHP

mysqli_driver::embedded_server_start
mysqli_warning
mysqli_driver
PHP Manual