2017-08-02 1 views
0

J'ai une page de profil utilisateur dans laquelle ils peuvent changer leur photo de profil. Coupant à la chasse, le PHP télécharge la nouvelle image, et redirige vers la page de profil mais la page reste avec l'ancienne image de profil jusqu'à une actualisation de page. J'ai essayé les balises meta et les en-têtes PHP, donc j'ai besoin de location.reload(true) pour arriver une fois, mais comment puis-je l'appeler une seule fois, et seulement après une modification de l'image de profil. (L'utilisation d'une variable get ne fonctionnera pas car je ne peux pas trouver un moyen de l'enlever après le rechargement, donc il se recharge à l'infini).location.reload (true) sans les variables/uniquement appelées une seule fois

... ou est-ce que je m'y prends mal?

MISE À JOUR: FIX

résolu ce problème en utilisant history.pushstate() pour supprimer la variable d'URL (rafraîchissement = 1) avant d'appeler location.reload(true).

Répondre

0

Vous pouvez utiliser Ajax pour charger l'URL de la nouvelle image après qu'elle a été téléchargée. Ainsi, vous récupérez toujours l'url de l'image de profil en arrière-plan et après que le nouveau a été téléchargé, il peut être rechargé depuis l'arrière-plan.

+0

Je pourrais utiliser PHP pour changer l'état d'un bouton, qui ne serait pas mis à jour par l'AJAX, par exemple dans l'attribut value du bouton input type =,

+0

Sauf si vous suggérez que je change avec le JavaScript après l'AJAX ... mais est-ce aussi le fait compliqué? –

+0

Vous devez donner un identifiant au bouton et ajouter une fonction dans votre javascript qui est appelée si le bouton est cliqué. Vous pouvez donc gérer le téléchargement, puis mettre à jour/remplacer l'étiquette du bouton. –