Oui, tant que tu as une valeur à "trier", c'est bon un timestamp.Je le fais avec Timestamp.
Imagine une fonction JS appelée toutes les 10 secondes, il te faut donc une fonction :Par contre, là ou je bloque c'est pour la partie affichage dynamique avec Jquery et Ajax.
je n'arrive pas à visualiser le passage entre les données récupérées ( en Json ?) et la page Ajax qui va les afficher avec un inervale de 10 s par exemple!
//appeler la fonction à intervalle de 10 secondes
setInterval(faireAppelAjax, 10000); // 10000 ms = 10 secondes
La fonction contient l'appel AJAX : function faireAppelAjax() {
$.ajax({
url: 'requete.php', //URL du fichier PHP qui fait la requête SQL
type: 'GET',
dataType: 'json', // On attend une réponse JSON
success: function(data) {
//traitement des données reçues (data)
console.log('Données reçues : ', data);
//mettre ici le code pour traiter les données selon tes besoins
},
error: function(xhr, status, error) {
console.error('Erreur lors de la requête AJAX :', status, error);
}
});
}
Tu peux appeler la fonction une première fois, pour ne pas attendre 10s :
faireAppelAjax();
N'oublie pas d'inclure jQuery.Code : Tout sélectionner
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8">
<title>AJAX et jQuery</title>
<script src="https://code.jquery(.)com/jquery-latest.js"></script>
<script>
function faireAppelAjax() {
$.ajax({
url: 'lirePrix.php', //URL du fichier PHP qui fait la requête SQL
type: 'GET',
dataType: 'json', // On attend une réponse JSON
success: function(data) {
//traitement des données reçues (data)
console.log('Données reçues : ', data);
//mettre ici le code pour traiter les données selon tes besoins
var objJSON = JSON.parse(data);
$("#texte1").text("Le prix du numero " + objJSON.numero + " est : " + objJSON.prix + " €");
},
error: function(xhr, status, error) {
console.error('Erreur lors de la requête AJAX :', status, error);
}
});
}
</script>
</head>
<body>
<div>
<h1>Affichage Data avec JavaScript</h1>
<script type="text/javascript">
// Ici on apelle la fonction
faireAppelAjax()
</script>
</div>
</body>
</html>
Code : Tout sélectionner
<?php
$mysqli = new mysqli("URL", "Login", "pass", "Base");
$requete = "SELECT * FROM produits WHERE numero = 1";
$resultat = $mysqli->query($requete);
$ligne = $resultat->fetch_assoc();
echo json_encode($ligne);
?>
Code : Tout sélectionner
{"numero":"1","prix":"36"}
Pour l'afficher côté client :Bonjour two3d, or1,
LirePrix.php affiche :
C'est déjà un début mais pour la suite, c'est le vague absolu!Code : Tout sélectionner
{"numero":"1","prix":"36"}
Merci.
success: function(data) {
//data.numero
//et
//data.prix
//seront tes variables
}CTRL + MAJ + i, la console affiche les message "console.log (ou .info, .error, .table, etc)" s'il yen a.pour OR 1,
C'est quoi la console du navigateur ? Comment l'afficher?
Merci.
Code : Tout sélectionner
$('#Temp').text(data.Temp);
$('#Hum').text(data.Hum);
Code : Tout sélectionner
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8">
<title>Affichage Dynamique avec Ajax</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
<link rel="stylesheet" href="bootstrap.min.css" media="screen">
</head>
<body>
<div class="jumbotron">
<h2 class="display-4">Home Balise </h2>
<p class="lead">Affichage Dynamique</p>
</div>
<div class="container">
<div class="row">
<div class="col-lg-3">
<div class="card text-white bg-primary mb-3 text-center" style="max-width: 20rem;">
<div class="card-header" id="thermo">Thermometre </div>
<h2 class="display-4"><span id="Temp"></span> °C</h2>
<div class="card-header" id="thermo">Humidity </div>
<h2 class="display-4"><span id="Hum"></span> %</h2>
</div>
</div>
</div>
</div>
<p id="texte"></p>
<!-- Footer -->
<footer class="footer">
<div class="container-fluid bg-primary text-center fixed-bottom">
<span class="text-muted"> © 2018
<a href="https://mdbootstrap.com/bootstrap-tutorial/"> byfeel.info</a></span>
</div>
</footer>
<!-- Footer -->
<!-- Bootstrap core JavaScript
================================================== -->
<script src="jquery.min.js"></script>
<script src="bootstrap.min.js"></script>
<script>
function AppelAjax() {
$.ajax({
url: 'lireData.php', //URL du fichier PHP qui fait la requête SQL
type: 'GET',
dataType: 'json', // On attend une réponse JSON
success: function(data) {
//traitement des données reçues (data)
console.log('Données reçues : ', data);
//mettre ici le code pour traiter les données selon tes besoins
$('#Temp').text(data.Temp);
$('#Hum').text(data.Hum);
//$("#texte").text("Temp : " + data.Temp + " Hum : " + data.Hum);
},
error: function(xhr, status, error) {
console.error('Erreur lors de la requête AJAX :', status, error);
}
});
}
AppelAjax(); // premiere execution
setInterval(function(){
AppelAjax() // rappel toutes les 10 secondes
}, 10000);
</script>
</body>
</html>