Hello I am currently trying to pass variable entries by the user during the connection step to the main page of my application, but I encounter an error and I do not know what is causing it, in my page main (gamepage) in the child of the boy I want to display the address of the controller but flutter tells me that this variable is not defined!!!!
You are my only hope
import 'dart:convert';
import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';
import 'package:flutter/widgets.dart';
import 'package:http/http.dart' as http;
import 'package:tentative_formulaire_konamicash/stfgamepage.dart';
class register extends StatefulWidget {
const register({super.key});
@override
State<register> createState() => _registerState();
}
class _registerState extends State<register> {
final _formKey = GlobalKey<FormState>();
final controllermail = TextEditingController();
final controllerpassword = TextEditingController();
Future<void> login(String mail, String password) async {
try {
var url = Uri.parse('https://konamicash.com/authentification_app');
var response = await http.post(
url,
headers: {
"Accept": "application/json",
"Access-Control-Allow-Origin": "*"
},
body: {
"the_mail": mail,
"the_pasword": password,
},
);
if (response.statusCode == 200) {
var data = jsonDecode(response.body);
print('OK: $data');
if (data['authentification'] == 0) {
} else {
Navigator.push(
context,
PageRouteBuilder(
pageBuilder: (context, animation, secondaryAnimation) => Gaming(
formKey: GlobalKey<FormState>(),
controlleradressemail:TextEditingController(),
controllermotdepasse : TextEditingController(),
),
));
}
}
} catch (e) {
print('An error occurred: $e');
}
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: const Text('nami'),
),
body: Form(
key: _formKey,
child: Column(
children: [
Container(
child: TextFormField(
decoration: const InputDecoration(labelText: 'mail'),
controller: controllermail,
),
),
Container(
child: TextFormField(
decoration: const InputDecoration(labelText: 'password'),
controller: controllerpassword,
),
),
SizedBox(
width: double.infinity,
height: 50,
child: ElevatedButton(
onPressed: () {
final mail = controllermail.text;
final password = controllerpassword.text;
login(mail, password);
},
child: const Text('Connexion'),
),
),
],
),
),
);
}
}