ErrorController
Request
GET Parameters
None
POST Parameters
None
Uploaded Files
None
Request Attributes
| Key | Value |
|---|---|
| _controller | "error_controller" |
| _stopwatch_token | "f87e95" |
| exception | Twig\Error\RuntimeError {#552 #message: "Impossible to access an attribute ("fullname") on a null variable." #code: 0 #file: "/var/www/ulearning/templates/user/profil.html.twig" #line: 4 -lineno: 4 -name: "user/profil.html.twig" -rawMessage: "Impossible to access an attribute ("fullname") on a null variable." -sourcePath: "/var/www/ulearning/templates/user/profil.html.twig" -sourceCode: """ {% extends 'base.html.twig' %}\n \n {% block title %}\n \tProfil - {{ user.fullname|capitalize }}\n {% endblock %}\n \n {% block body %}\n <style>\n \t.profile-header {\n \t\tbackground: linear-gradient(135deg, #3498db, #6f42c1);\n \t\tcolor: white;\n \t\tpadding: 2rem;\n \t\tborder-radius: 10px;\n \t\tmargin-bottom: 1.5rem;\n \t\tbox-shadow: 0 4px 10px rgba(0,0,0,.15);\n \t}\n \t.profile-header img.avatar {\n \t\twidth: 100px;\n \t\theight: 100px;\n \t\tborder-radius: 50%;\n \t\tobject-fit: cover;\n \t\tborder: 3px solid #fff;\n \t\tbox-shadow: 0 0 10px rgba(0,0,0,.1);\n \t}\n \t.card-info {\n \t\tborder-radius: 10px;\n \t\tbox-shadow: 0 2px 8px rgba(0,0,0,.1);\n \t\ttransition: box-shadow 0.3s ease;\n \t}\n \t.card-info:hover {\n \t\tbox-shadow: 0 4px 12px rgba(0,0,0,.2);\n \t}\n \t.card-info .card-title {\n \t\tcolor: #3498db;\n \t}\n \t.btn-update {\n \t\tbackground-color: #6f42c1;\n \t\tborder: none;\n \t}\n \t.btn-update:hover {\n \t\tbackground-color: #59329a;\n \t}\n \t.label-info {\n \t\tfont-weight: 600;\n \t\tcolor: #555;\n \t}\n \t.value-info {\n \t\tcolor: #333;\n \t}\n \t@media (max-width: 768px) {\n \t\t.profile-header {\n \t\t\ttext-align: center;\n \t\t}\n \t}\n </style>\n \n <div class="container py-4">\n \t<div class="profile-header text-center">\n \t\t<img class="avatar mb-3" src="{{ asset('ressources/picture/avatar.png') }}" alt="{{ user.fullname }}">\n \t\t<h3>{{ user.fullname }}</h3>\n \t\t<p>{{ user.email }}</p>\n \t</div>\n \n \t<div class="row">\n \t\t<div class="col-md-6 mb-4">\n \t\t\t<div class="card card-info p-4">\n \t\t\t\t<h5 class="card-title mb-3">Informations personnelles</h5>\n \t\t\t\t<div class="mb-2">\n \t\t\t\t\t<span class="label-info">Nom complet :</span>\n \t\t\t\t\t<span class="value-info">{{ user.lastname | upper }} {{ user.firstname }}</span>\n \t\t\t\t</div>\n \t\t\t\t<div class="mb-2">\n \t\t\t\t\t<span class="label-info">E-mail :</span>\n \t\t\t\t\t<span class="value-info">{{ user.email }}</span>\n \t\t\t\t</div>\n \t\t\t\t<div class="mb-2">\n \t\t\t\t\t<span class="label-info">Matricule :</span>\n \t\t\t\t\t<span class="value-info">{{ user.matricule|default('N/A') }}</span>\n \t\t\t\t</div>\n \t\t\t\t<div class="mb-2">\n \t\t\t\t\t<span class="label-info">Téléphone :</span>\n \t\t\t\t\t<span class="value-info">{{ user.phone|default('N/A') }}</span>\n \t\t\t\t</div>\n \t\t\t</div>\n \t\t</div>\n \n \t\t<div class="col-md-6 mb-4">\n \t\t\t<div class="card card-info p-4">\n \t\t\t\t<h5 class="card-title mb-3">Formation actuelle</h5>\n \t\t\t\t<div class="mb-2">\n \t\t\t\t\t<span class="label-info">Niveau :</span>\n \t\t\t\t\t<span class="value-info">{{ app.user.studentGroup.level.name|default('N/A') }}</span>\n \t\t\t\t</div>\n \t\t\t\t<div class="mb-2">\n \t\t\t\t\t<span class="label-info">Groupe :</span>\n \t\t\t\t\t<span class="value-info">{{ app.user.studentGroup|default('N/A') }}</span>\n \t\t\t\t</div>\n \t\t\t</div>\n \t\t</div>\n \t</div>\n \n \t<div class="text-center mt-4">\n \t\t<a href="{{ path('user_profil_update') }}" class="btn btn-update btn-lg text-white">Modifier mon mot de passe</a>\n \t</div>\n </div>\n {% endblock %}\n """ : { { twig_get_attribute(Environment $env, Source $source, $object, $item, array $arguments = [], $type = 'any', $isDefinedTest = false, $ignoreStrictCheck = false, $sandboxed = false, int $lineno = -1) … › |
| logger | Symfony\Bridge\Monolog\Logger {#73 …9} |
Request Headers
| Header | Value |
|---|---|
| accept | "*/*" |
| accept-encoding | "gzip, br, deflate" |
| from | "gptbot(at)openai.com" |
| host | "uprim-madagascar.com" |
| user-agent | "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)" |
| x-openai-host-hash | "982334256" |
| x-php-ob-level | "1" |
Request Content
Request content not available (it was retrieved as a resource).
Response
Response Headers
| Header | Value |
|---|---|
| cache-control | "no-cache, private" |
| content-type | "text/html; charset=UTF-8" |
| date | "Tue, 16 Dec 2025 05:01:28 GMT" |
| vary | "Accept" |
| x-debug-exception | "Impossible%20to%20access%20an%20attribute%20%28%22fullname%22%29%20on%20a%20null%20variable." |
| x-debug-exception-file | "%2Fvar%2Fwww%2Fulearning%2Ftemplates%2Fuser%2Fprofil.html.twig:4" |
| x-debug-token | "88121f" |
Cookies
Request Cookies
No request cookies
Response Cookies
No response cookies
Session
Session Metadata
No session metadata
Session Attributes
No session attributes
Session Usage
0
Usages
Stateless check enabled
Session not used.
Flashes
Flashes
No flash messages were created.
Server Parameters
Server Parameters
Defined in .env
| Key | Value |
|---|---|
| APP_ENV | "dev" |
| APP_SECRET | "6c84b7db6db9def0261f8438bf1ba0ff" |
| APP_TIMEZONE | "Africa/Nairobi" |
| CORS_ALLOW_ORIGIN | "^https?://(localhost|127\.0\.0\.1)(:[0-9]+)?$" |
| DATABASE_URL | "mysql://siteUserApp:Vio9MxkwXYfDx@127.0.0.1:3306/elrn_app_db?serverVersion=mariadb-10.6.22&charset=utf8mb4" |
| DEBUG | "true" |
| MESSENGER_TRANSPORT_DSN | "doctrine://default?auto_setup=0" |
Defined as regular env variables
| Key | Value |
|---|---|
| APP_DEBUG | "1" |
| CONTEXT_DOCUMENT_ROOT | "/var/www/ulearning/public" |
| CONTEXT_PREFIX | "" |
| DOCUMENT_ROOT | "/var/www/ulearning/public" |
| GATEWAY_INTERFACE | "CGI/1.1" |
| HTTPS | "on" |
| HTTP_ACCEPT | "*/*" |
| HTTP_ACCEPT_ENCODING | "gzip, br, deflate" |
| HTTP_FROM | "gptbot(at)openai.com" |
| HTTP_HOST | "uprim-madagascar.com" |
| HTTP_USER_AGENT | "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)" |
| HTTP_X_OPENAI_HOST_HASH | "982334256" |
| PATH | "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin" |
| PHP_SELF | "/index.php" |
| QUERY_STRING | "" |
| REMOTE_ADDR | "74.7.227.38" |
| REMOTE_PORT | "60198" |
| REQUEST_METHOD | "GET" |
| REQUEST_SCHEME | "https" |
| REQUEST_TIME | 1765861288 |
| REQUEST_TIME_FLOAT | 1765861288.8292 |
| REQUEST_URI | "/profil" |
| SCRIPT_FILENAME | "/var/www/ulearning/public/index.php" |
| SCRIPT_NAME | "/index.php" |
| SERVER_ADDR | "102.16.63.66" |
| SERVER_ADMIN | "[no address given]" |
| SERVER_NAME | "uprim-madagascar.com" |
| SERVER_PORT | "443" |
| SERVER_PROTOCOL | "HTTP/1.1" |
| SERVER_SIGNATURE | "<address>Apache/2.4.52 (Ubuntu) Server at uprim-madagascar.com Port 443</address>\n" |
| SERVER_SOFTWARE | "Apache/2.4.52 (Ubuntu)" |
| SSL_TLS_SNI | "uprim-madagascar.com" |
| SYMFONY_DOTENV_VARS | "APP_ENV,APP_SECRET,DATABASE_URL,MESSENGER_TRANSPORT_DSN,CORS_ALLOW_ORIGIN,APP_TIMEZONE,DEBUG" |
Parent Request
Return to parent request (token = aebe18)
| Key | Value |
|---|---|
| _controller | "App\Controller\SecurityController::profil" |
| _firewall_context | "security.firewall.map.context.main" |
| _remove_csp_headers | true |
| _route | "user_profil" |
| _route_params | [] |
| _security_firewall_run | "_security_main" |
| _stopwatch_token | "4512ef" |