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'),
),
),
],
),
),
);
}
}
Top comments (1)
```import 'package:flutter/material.dart';
import 'package:tentative_formulaire_konamicash/pages/navbar.dart';
//this is the page i want my users to be redirected and where i want to get the variables
class Gaming extends StatefulWidget {
Gaming(
{super.key,
required GlobalKey formKey,
required this.controlleradressemail,
required this.controllermotdepasse});
final TextEditingController controlleradressemail;
final TextEditingController controllermotdepasse;
@override
State createState() => _GamingState();
}
class _GamingState extends State {
@override
Widget build(BuildContext context) {
return Scaffold(
drawer: const Navbar(),
appBar: AppBar(
title: const Text('Namis.com'),
backgroundColor: Colors.pink,
),
body: const Center(
child: Text(
//here is where flutter tells me that controlleradressemail is not defined and where i //want to display the content of the variable
controlleradressemail,
style: TextStyle(fontSize: 40.0),
),
),
);
}
}