AJAX ve PHP ile detaylı Javascript için yeni ve okuma bir sürü yapıyor, ve bu aşamada daha çok deneme-yanılma, ama ben bir JavaScript ve Ajax bilgi bulma değilim bir durum içine çalıştırmak bana doğru yönde iterek, böylece ben bazı kötü kodu oluşturmak.
Benim evde 2 Güneş İnvertörler var ve bir RS232 veri şimdi invertes her saat başı yapmak güç bir MySQL tabloya veri yüklemek için bir IP dönüştürücü üzerinden benim ev ağına bağlı her inverter üzerinde port, ve ekran var Ben yapılan basit bir web sitesinde veri, bu yüzden ben işteyim gündüz saatlerini ProgID neler olduğunu görebilirsiniz.
Ben bilgi raporlar oluşturmak için bir JQuery datepicker ile bir web sayfası yaptık. Ben oluşturulan gücünü görmek istediğiniz zaman "Başlat" ve "End" tarihini seçmek için araç olarak DatePicker kullanmaya çalışıyorum, daha sonra web sayfasında form / tablo oluşturmak için, MySQL tablodan bu bilgileri çağrı Ben görmek ve de yazdırabilirsiniz.
Ben hiçbir sonuç ile bu işlemi yapmak için PHP istemek için AJAX kullanmaya çalışıyorlar.
Ben temel bir MySQL tablo var ...
+---------+----------+------------+---------+------------+----------+ | UNIT ID | Date | Time | Power | Volts | Current | +---------+----------+------------+---------+------------+----------+ | 1 |YYYY-MM-DD| 12:00:00 | 560 | XXXX | XXXX | +---------+----------+------------+---------+------------+----------+ | 1 |YYYY-MM-DD| 13:00:00 | 560 | XXXX | XXXX | +---------+----------+------------+---------+------------+----------+ | 1 |YYYY-MM-DD| 12:00:00 | 490 | XXXX | XXXX | +---------+----------+------------+---------+------------+----------+
Vs ...
HTML Başkanı kodu ...
//DatePicker
<script type="text/javascript">
$(function(){
$('input').daterangepicker({dateFormat: 'M d, yy', posX: 25, posY: '6.8em'});
});
</script>
//Ajax XML connect to the PHP to MySQL and back
<script type="text/javascript">
function makeReport(str)
{
if (str=="")
{
document.getElementById("start1").innerHTML="";
document.getElementById("end1").innerHTML="";
return;
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("txtText").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","report.php"+str,true);
xmlhttp.send();
}
</script>
Sayfanın Vücut içimde var ...
//The DatePicker
<div id="calsw"><label>
From:
</label>
<input type="text" id="start1" onchange="makeReport(this.value)"/>
<label>
To:
</label><input type="text" id="end1" onchange="makeReport(this.value)"/></div>
//Where the Report will show
<div id="textHint" align="center">Report Data will list here</div>
PHP (report.php) olarak yazılır ...
<?php
$start1=strtotime('start1');
$end1=strtotime('end1');
$con = mysql_connect('localhost', 'XXXX', 'XXXXXXXX');
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("inverters", $con);
$sql='select * date, time, power, amp, current '
.'FROM feed AS textHint '
.'ORDER BY date,time'
.'WHERE DATE BETWEEN [start1] and [end1]';
$res = mysql_query($sql);
while ($row = mysql_fetch_assoc($res))
echo $row['textText'];
echo "<table border='1'>
<tr>
<th>Date</th>
<th>Hour</th>
<th>Power</th>
<th>Volt</th>
<th>Current</th>
</tr>";
while($row = mysql_fetch_array($result))
{
echo "<tr>";
echo "<td>" . $row['Date'] . "</td>";
echo "<td>" . $row['Time'] . "</td>";
echo "<td>" . $row['Power'] . "</td>";
echo "<td>" . $row['Volt'] . "</td>";
echo "<td>" . $row['Current'] . "</td>";
echo "</tr>";
}
echo "</table>";
mysql_close($con);
?>
Daha okudum ve daha ben kodundan farklı chages olun, ben de bütün ileri gitmiyorum hissediyorum. Bu herhangi bir yardım, ya da ben bir datepicker ile veri bu çağrıya kendimi okumak ve eğitmek nerede bir bağlantı harika olurdu.
Teşekkür ederiz.
Alan