Bonjour,
Voila je rencontre un petit problème avec mon code.
Ce que je fais
Je conçois un panel de gestion des utilisateurs pour un serveur de jeu. J'aimerais permettre aux membres du staff de pouvoir gérer toutes les infos joueur en base de données sans pour autant être en root sur la machine. L'idée est de faire une 1ère page qui demande de renseigner le numéro de téléphone du joueur. Cette page, une fois le formulaire de type GET soumis, va rediriger la 2ème page. Cette 2ème page va être également composée d'un formulaire, avec autant d'inputs que le nombre de colonnes dans la table SQL. L'idée est d'afficher toutes les données joueur, avec la condition "WHERE telephone = ?" dans ma requête pour filtrer uniquement le joueur en question. Une fois fait, je vais donc faire des "values=" pour définir à l'avance chacune des valeurs relatives au joueur, précédemment filtré par ma première requête SQL ( je sais, c'est le bordel, j'en suis désolé, mais c'est pas si simple d'écrire tout ça :') )
Voici donc mon formulaire, qui est sensé recevoir les valeurs relatives au joueur précédemment sélectionné via ma requête SQL :
( PS : C'est du Boostrap Twitter Paper )
<form class="form-horizontal" method="post" action="manage-done.php">
<fieldset>
<legend>Gérer les Informations du Joueur : </legend>
<div class="form-group">
<label for="inputEmail" class="col-lg-2 control-label"><i class="mdi mdi-steam"></i> Identifiant Steam </label>
<div class="col-lg-10">
<input type="text" class="form-control" name="identifier" value="<?= $donnees['identifier']; ?>">
</div>
</div>
<div class="form-group">
<label for="inputEmail" class="col-lg-2 control-label"><i class="mdi mdi-account-circle"></i> Nom</label>
<div class="col-lg-10">
<input type="text" class="form-control" name="nom" value="<?= $donnees['nom']; ?>">
</div>
</div>
<div class="form-group">
<label for="inputEmail" class="col-lg-2 control-label"><i class="mdi mdi-account-box"></i> Prénom</label>
<div class="col-lg-10">
<input type="text" class="form-control" name="prenom" value="<?= $donnees['prenom']; ?>">
</div>
</div>
<div class="form-group">
<label for="select" class="col-lg-2 control-label"><i class="mdi mdi-sort-alphabetical"></i> Type de Joueur</label>
<div class="col-lg-10">
<select class="form-control" name="group">
<option>user</option>
<option>owner</option>
</select>
</div>
</div>
<div class="form-group">
<label for="select" class="col-lg-2 control-label"><i class="mdi mdi-sort-numeric"></i> Niveau de Permission</label>
<div class="col-lg-10">
<select class="form-control" name="permission_level">
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
</select>
</div>
</div>
<div class="form-group">
<label for="inputEmail" class="col-lg-2 control-label"><i class="mdi mdi-cash-multiple"></i> Argent en Poche</label>
<div class="col-lg-10">
<input type="text" class="form-control" name="money" value="<?= $donnees['money']; ?>">
</div>
</div>
<div class="form-group">
<label for="inputEmail" class="col-lg-2 control-label"><i class="mdi mdi-cash"></i> Compte Bancaire</label>
<div class="col-lg-10">
<input type="text" class="form-control" name="bankbalance" value="<?= $donnees['bankbalance']; ?>">
</div>
</div>
<div class="form-group">
<label for="inputEmail" class="col-lg-2 control-label"><i class="mdi mdi-cash-100"></i> Argent Sale</label>
<div class="col-lg-10">
<input type="text" class="form-control" name="dirtymoney" value="<?= $donnees['dirtymoney']; ?>">
</div>
</div>
<div class="form-group">
<label for="inputEmail" class="col-lg-2 control-label"><i class="mdi mdi-content-paste"></i> Métier du joueur</label>
<div class="col-lg-10">
<input type="text" class="form-control" name="job" value="<?= $donnees['job']; ?>">
</div>
</div>
<div class="form-group">
<label for="select" class="col-lg-2 control-label"><i class="mdi mdi-chevron-double-up"></i> Grade LSPD</label>
<div class="col-lg-10">
<select class="form-control" id="select" name="police">
<option value="<?= $donnees['police'];?>">
<?php
switch($donnees['police'])
{
case 1:
echo 'Cadet';
break;
case 2:
echo 'Brigadier';
break;
case 3:
echo 'Sergent';
break;
case 4:
echo 'Lieutenant';
break;
case 5:
echo 'Capitaine';
break;
case 6:
echo 'Commandant';
break;
case 7:
echo 'Colonel';
break;
}?>
</option>
<option value="1">Cadet</option>
<option value="2">Brigadier</option>
<option value="3">Sergent</option>
<option value="4">Lieutenant</option>
<option value="4">Capitaine</option>
<option value="4">Commandant</option>
<option value="4">Colonel</option>
</select>
</div>
</div>
<input type="hidden" class="form-control" name="telephone" value="<?= $donnees['telephone']; ?>">
<div class="form-group">
<div class="form-group">
<div class="col-lg-10 col-lg-offset-2"><br>
<button type="submit" class="btn btn-primary"><i class="mdi mdi-content-save"></i> Enregistrer</button>
<button type="reset" class="btn btn-default"><i class="mdi mdi-cancel"></i> effacer</button>
</div>
</div>
</fieldset>
</form>
Ce que j'obtiens
Jusque là tout va bien, ma page s'affiche, avec les valeurs attendues. Les complications vont arrivées une fois ce second formulaire soumis.
Lorsque que je vais modifier ( ou pas ) l'une des valeurs du formulaire, et que je soumets le formulaire, une erreur apparaît :

Voici donc mon 3ème fichier, qui est sensé UDPATE les valeurs en base :
<?php
if(isset($_POST['group']) && isset($_POST['permission_level']) && isset($_POST['money']) && isset($_POST['bankbalance']) && isset($_POST['dirtymoney']) && isset($_POST['job']) && isset($_POST['police']) && isset($_POST['nom']) && isset($_POST['prenom']) && isset($_POST['telephone']))
{
$req = $bdd->prepare('UPDATE `gta5_gamemode_essential`.`users` SET group = :group, permission_level = :permission_level, money = :money, bankbalance = :bankbalance, dirtymoney = :dirtymoney, job = :job, police = :police, nom = :nom, prenom = :prenom WHERE telephone = :telephone');
$req->execute(array(
'group' => $_POST['group'],
'permission_level' => $_POST['permission_level'],
'money' => htmlspecialchars($_POST['money']),
'bankbalance' => htmlspecialchars($_POST['bankbalance']),
'dirtymoney' => htmlspecialchars($_POST['dirtymoney']),
'job' => htmlspecialchars($_POST['job']),
'police' => $_POST['police'],
'nom' => htmlspecialchars($_POST['nom']),
'prenom' => htmlspecialchars($_POST['prenom']),
'telephone' => htmlspecialchars($_POST['telephone'])
));
echo "<div class=\"alert alert-dismissible alert-success\">
<button type=\"button\" class=\"close\" data-dismiss=\"alert\">×</button>
<h4><i class=\"mdi mdi-checkbox-marked-circle-outline\"></i> Information</h4>
<p>Modification effectuée avec succès.</p>
</div><br>";
}
?>
Et je ne comprend pas bien pour j'aurais un problème, au début j'ai pensé au fait que de mon fichier 1 à 3, les valeurs acquises en GET, seraient perdues, mais j'avoue que je suis un peu perdu là...
Merci d'avance à ceux qui ont le courage de tout lire, de comprendre, et de m'aider bien sûr :D
A bientôt !