Tu devrais retravailler le code de ce fichier, tu te repetes beaucoup (METHODE DRY) , tu gagnerais en performance et en skill ^^.
Bonsoir à vous,
Je fais des update sur mon site et le soucis c'est que quand j'update les infos elles se update en bdd mais pas sur le site et donc je dois à chaque fois me déconnecter / réconnecter pour avoir les infos actualiser
Si vous avez une méthode merci !
31 réponses
Pour que tes modifications s'affichent dynamiquement, il faut soit faire des appels AJAX, soit utiliser un serveur de websockets. Dans tous les cas tu as besoin de JavaScript.
Ces pas très precis comme question.
Si je comprend bien, tu doit forcement utiliser des sessions et les infos que tu actualise doivent êtres en sessions donc ces tout à fait normal que tu doit te déconnecter / re-connecter à chaque fois.
Si tu veut éviter cela, quant tu fait un update tu doit refaire la sessions et ca evitera cela.
je ne vois pas l'erreur :/
Dans ta requete, il n'y as pas d'erreur mais comme tu l'as demande, a chaque modification tu souhaites que cela soit visible immediatement et pour cela tu vas devoir utiliser AJAX pour que chaque modification que tu vas effectuer soit visible sans que tu es besoin de te deconnecter / reconnecter.
Pouvons-nous avoir le code de la page en question ?
Penser à cacher les éléments sensibles s'il y en a (mdp, host...)
ben non elle ne fonctionne pas, pour le moment je n'utilise pas ajax, j'aimerais quel marche déjà :'(
Oui ça nous le savons. Donc en voyant votre code nous pourrons surement vous aider plus précisément.
$email = $_POST['email'];
$update = "UPDATE users SET email = ? WHERE id = '" . $_SESSION['Auth']['id'] . "'";
$req = $db->prepare($update);
$req->bindParam(1, $email, PDO::PARAM_STR);
$req->execute();
Essai avec ce bout de code
Donc si je suis votre logique. Lorsque vous arrivé sur la page "account/index.php", les infos de l'utilisateur ne sont pas mises à jours ?
ben je suis bien redirigé mais la requete de update pas dans la bdd
Moi avoir compris rien.
CE CODE
s'excute mais dans la base de donnée (bdd) il ne met pas à jour l'email
D'accord, c'est bien différent de ce que vous nous avez dit au début.
Essayer ceci
Non sa ne marche toujours pas :(
Pas de message d'erreur ?
Sinon :
Sa ne me retourne aucune erreur :(
Fait un var_dump de $email pour voir s'il n'est pas vide.
Tout au début de votre code, mettez ceci pour afficher toute les erreurs.
De plus, commenter les 2 header("... et ajouter en dessous un echo avec un message du style "pas d'erreurs" pour le premiers et l'inver pour le second
j'ai fais un var_dump($_SESSION['Auth']['email']); après le execute et il me retourne un string null
Logique puisque à aucun moment vous faite : $_SESSION['Auth']['email'] =
C'est le principe d'avoir des données stockées dans la session ?
Sinon pour l'auteur essaye de faire
ou
pour qu'on voit ce que ça donne déjà
array (size=16)
'id' => string '16' (length=2)
'identifiant' => string 'admin' (length=5)
'password' => string 'd033e22ae348aeb5660fc2140aec35850c4da997' (length=40)
'email' => string '' (length=0)
'age' => string '17' (length=2)
'avatar' => string '' (length=0)
'biographie' => string '' (length=0)
'site' => string '' (length=0)
'facebook' => string '' (length=0)
'twitter' => string '' (length=0)
'google_plus' => string '' (length=0)
'steam' => string '' (length=0)
'twitch' => string '' (length=0)
'youtube' => string '' (length=0)
'skype' => string '' (length=0)
'date_inscription' => string '0000-00-00' (length=10)
Où est fait le :
En quoi sa peut résoudre le truc ?
mon fichier de traitement n'arrive pas à récup les valeur des champs !
Au temps pour moi, je me suis égaré dans le problème.
Et en changeant la méthode d'insertion des valeurs par celle-ci:
Fait un var_dump($_POST['email']);
j'ai trouvé l'erreur, qui est du côte html et donc j'ai le code du traitement
sinon merci quand même pour votre aide !
Vous pouvez utiliser AJAX
Mais le mieux c'est d'utiliser une fonction dans laquelle vous mettez une autre $.Get ()
Est Vous pouvez la rappeler éternellement avec la fonction setintervale()