Bonjour tous le monde,
Voilà je suis coincé sur une simple requête SQL, pour vous résumer le programme il y a une page ou l'internaute créer son compte, son pseudo est ensuite gardé en session et l'internaute est invité à créer son personnage (avatar) qui aura une liaison avec la clé primaire du compte.
Donc comme vous le voyez le compte est bien crée et ajouté dans la BDD, je garde donc le pseudo en session pour pouvoir faire par la suite une requête SQL pour connaitre l'ID qui a été attribué à ce pseudo dans la BDD
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 [HttpPost] [ValidateAntiForgeryToken] public IActionResult AddAccount(Accounts accounts) { accounts.Access = 1; accounts.LastConnection = DateTime.Now.ToString(); accounts.LastIP = Request.HttpContext.Connection.RemoteIpAddress.ToString(); accounts.Status = 0; accounts.Reason = "None"; if (ModelState.IsValid) { HttpContext.Session.SetString("Pseudo", accounts.Pseudo); _context.Accounts.Add(accounts); _context.SaveChanges(); return RedirectToAction("Character"); } return View("Index"); }
Voici maintenant le code de quand l'internaute à rempli le formulaire de création du personnage:
Sauf que je ne sais pas comment récupérer le résultat, je sens bien qu'entre PHP et l'ASP.NET il y a un fossé :p
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66 [HttpPost] [ValidateAntiForgeryToken] public IActionResult AddCharacter(Characters character) { var Pseudo = HttpContext.Session.GetString("Pseudo"); var AccountID = _context.Accounts .FromSql("SELECT * FROM Accounts WHERE Account.Pseudo =", Pseudo) .ToList(); character.AccountID = Convert.ToInt32(AccountID.); character.Level = 1; character.HPCurrent = 120; character.HPLevel = 120; character.HPSP = 0; character.HPEquipment = 0; character.HPParchment = 0; character.HPTotal = 120; character.MPCurrent = 10; character.MPLevel = 10; character.MPSP = 0; character.MPEquipment = 0; character.MPParchment = 0; character.MPTotal = 10; character.StrengthLevel = 10; character.StrengthSP = 0; character.StrengthEquipment = 0; character.StrengthParchment = 0; character.StrengthTotal = 10; character.MagicLevel = 10; character.MagicSP = 0; character.MagicEquipment = 0; character.MagicParchment = 0; character.MagicTotal = 10; character.AgilityLevel = 10; character.AgilitySP = 0; character.AgilityEquipment = 0; character.AgilityParchment = 0; character.AgilityTotal = 10; character.DefenseLevel = 10; character.DefenseSP = 0; character.DefenseEquipment = 0; character.DefenseParchment = 0; character.DefenseTotal = 10; character.DefenseMagicLevel = 10; character.DefenseMagicSP = 0; character.DefenseMagicEquipment = 0; character.DefenseMagicParchment = 0; character.DefenseMagicTotal = 100; character.WisdomLevel = 0; character.WisdomSP = 0; character.WisdomEquipment = 0; character.WisdomParchment = 0; character.WisdomTotal = 0; character.Experience = 0; character.SkillPoint = 0; character.Gold = 0; character.TownID = 0; character.Chapter = 0; if (ModelState.IsValid) { _context.Characters.Add(character); _context.SaveChanges(); return RedirectToAction("Index"); } return View("Index"); }
Merci de votre aide
Cordialement,
Partager