La charge de PHP dans du javascript
J'ai un peu de code PHP où il dit que le temps que vous avez signé, et donne une approximation de combien de temps elle l'a été.
J'ai été à la recherche à essayer de l'actualiser avec le javascript, mais j'ai du mal à trouver exactement ce que je suis après, et comme mes connaissances, il n'est pas bon je suis un peu coincé sur le travail maintenant.
Fondamentalement, c'est le code que j'ai actuellement, avec la fonction de la chose que l'affichage de l'heure depuis chantant
Date registered: <?PHP echo date('jS F Y', $_SESSION['User_Date'])." at ".date('G:i:s', $_SESSION['User_Date']);
echo " (".time_delta('now',date('F j Y G:i:s', $_SESSION['User_Date'])).")"; ?>
Qui va afficher quelque chose comme:
Date d'inscription: 4 novembre 2013 à 0:57:31 (Environ 34 minutes ago)
Et j'ai eu ce pour javascript, mais je ne sais pas comment faire pour mettre à jour le texte et de ne pas rediriger la page.
<script>
setInterval(function() {
window.location.href = "timeupdate.php";
}, 1000);
</script>
Y aurait-il un moyen simple de faire cela, ou est-il la peine de l'éviter en termes d'utilisation de l'uc?
- Jetez un oeil à l'Ajax, il va vous permettre de requête
timeupdate.php
dans le fond, et ensuite mettre à jour la page avec la réponse. - Vous êtes à la recherche pour l'AJAX
Vous devez vous connecter pour publier un commentaire.
Que les commentaires ont suggéré AJAX est votre réponse.
Avec un appel ajax jQuery ressemblerait à quelque chose comme ceci:
Ceci affichera le texte retourné à partir de timeupdate.php pour un div avec l'id de "date_registered_element" -> changer pour le nom de la div pour qui vous voulez à la sortie de la mise à jour du texte.
Afin de passer une variable de session à l'Ajax fonction, vous devez avoir le serveur echo la variable de Session avant l'exécution du script (c'est à dire que la page est rendue) à quelque chose comme ceci:
HTML:
Veuillez NOTER: Vous devez être très prudent avec cela. Quelqu'un qui regarde votre balisage dans un des navigateurs Afficher la Source ou les Outils de développement seront en mesure de voir la Variable de SESSION echod de sortir. Vous ne devriez faire cela si les données ne représente aucun risque pour la sécurité. À mon avis, vous feriez mieux de passer pas d'OBTENIR des variables dans l'appel Ajax et juste référencer la variable de SESSION dans le timeupdate.php script. Le point de variables de SESSION est de fournir des fonctionnalités supplémentaires à l'adresse HTTP de sorte que vous ne devriez jamais avoir besoin d'envoyer des variables de SESSION sur une requête HTTP.
Cela dit, si vous souhaitez faire de la manière que vous avez actuellement mis en place le code est ci-dessous.
Une fois que vous avez fait l'écho de la variable de SESSION sur la page, vous pouvez récupérer la valeur de l'id avec jQuery et le passer à la fonction Ajax:
Javascript/jQuery:
si vous ajoutez jQuery dans votre page
<head></head>
tag AVANT votre script existant, cela devrait fonctionner: