je semble aller vite ... pas de placene postez pas droit
peut sembler ne pas obtenir une ligne unique (embeded) jquery Datepicker dateText pour poster correctement aux PHP et MySQL pour renvoyer des données à partir la table .. Ma lecture m'a fait comprendre qu'elle devrait être juste, mais ce n'est pas le cas. Maintenant, le sélecteur datepicker a plusieurs événements qui déclenchent à partir de la sélection unique ... les données demandées par le jour, le mois et l'année, ainsi que l'envoi de la date pour créer un graphique de données hautes pour les heures d'un jour, les jours d'un mois et mois d'une année.
Le tableau est très simple ... date, l'heure, le pouvoir
Voici le javasctipt ...
$(document).ready(function() {
$('#datepicker').datepicker({onSelect: function(dateText) {
var myDate = $(this).datepicker('getDate');
$('#apDiv1').html($.datepicker.formatDate('DD, d', myDate));
$('#apDiv5').html($.datepicker.formatDate('MM', myDate));
$('#apDiv7').html($.datepicker.formatDate('yy', myDate));
$.post('dayPower.php', {choice: dateText.val}, function(data) {
$('#apDiv2').html(data).show();
});
$.post('dayGraph.php', {choice: dateText.val}, function(data) {
$('#apDiv4').html().show();
});
$.post('monthPower.php', {choice: dateText.val}, function(data) {
$('#apDiv6').html(data).show();
});
$.post('monthGraph', {choice: dateText.val}, function(data) {
$('#apDiv9').html().show();
});
$.post('yearPower.php', {choice: dateText.val}, function(data) {
$('#apDiv8').html(data).show();
});
$.post('yearGraph', {choice: dateText.val}, function(data) {
$('#apDiv10').html().show();
});
}});
});
Voici le PHP pour le POST pour obtenir les données pour la journée (dayPower.php) ...
<?
if(isset($_POST['choice']))
$choice = (isset($_POST['choice'])) ? date("Y-m-d",strtotime($_POST['choice'])) : date("Y-m-d");
$con = mysql_connect("localhost","root","xxxxxxxx");
if (!$con) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db("inverters", $con);
$sql = 'SELECT sum(power) AS power '
.'FROM feed '
.'WHERE date = $choice';
$res = mysql_query($sql) or die('sql='.$sql."\n".mysql_error());
$row = mysql_fetch_assoc($res);
echo $row['power'];
?>
La première et la deuxième ligne du PHP doit obtenir la date de la datepicker, et alors mettez-le dans une date que mysql peut lire, et le sql select devrait récupérer les valeurs de la table et l'envoyer dans la DIV où je lui ai dit de partir ... Que fais-je de mal?
Merci,
ALAN
J'ai maintenant le Jquery d'afficher le fichier PHP avec ce script ...
$('#datepicker').datepicker({dateFormat: 'yy-mm-dd', onSelect: function(dateText) {
var myDate = $(this).datepicker('getDate');
$('#apDiv1').html($.datepicker.formatDate('DD, d', myDate));
$('#apDiv5').html($.datepicker.formatDate('MM', myDate));
$('#apDiv7').html($.datepicker.formatDate('yy', myDate));
$('#apDiv2').load('dayPower.php', {choice: dateText}, function() {
$(this).show();
});
$('#apDiv4').load('dayGraph.php', {choice: dateText}, function() {
$(this).show();
});
$('#apDiv6').load('monthPower.php', {choice: dateText}, function() {
$(this).show();
});
$('#apDiv9').load('monthGraph', {choice: dateText}, function() {
$(this).show();
});
$('#apDiv8').load('yearPower.php', {choice: dateText}, function() {
$(this).show();
});
$('#apDiv10').load('yearGraph', {choice: dateText}, function() {
$(this).show();
});
}});
}); Comme la nouvelle structure utilise LOAD et non POST, je comprends que je dois utiliser GET dans le PHP, donc j'ai fait les changements que je comprends devraient fonctionner, mais ils ne le font pas ... Je semble être de retour dans le même bateau qu'avant ... voici le nouveau PHP ... Des idées pour lesquelles ça ne marche pas ????
<?
$choice = (isset($_GET['choice'])) ? date("Y-m-d",strtotime($_GET['choice'])) : date("Y-m-d");
$con = mysql_connect("localhost","root","xxxxxxxx");
if (!$con) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db("inverters", $con);
$sql = 'SELECT sum(power) AS choice '
.'FROM feed '
.'WHERE date = $choice';
$res = mysql_query($sql) or die('sql='.$sql."\n".mysql_error());
$row = mysql_fetch_assoc($res);
echo $row['choice'], '<br />';
mysql_close($con);
?>
Avez-vous quelque chose si vous var_dump ($ _ POST)? –
Je n'ai pas essayé cela .. J'ai utilisé print_r pour déboguer. Je n'ai jamais utilisé var_dump ($ _ POST) avant. – hkalan2007
VOUS DEVRIEZ! 'print_r' est pour la visualisation paresseuse, seul' var_dump' va imprimer l'entrée/sortie réelle – ajreal