Sida 1 av 1

Hjälp med PHP och MySQL

Postat: 24 aug 2012, 20:02
av jompa68
Hej, har slagits ett tag mitt PHP skript för att visa data ifrån en tabell...får inte till det :oops:

Kod: Markera allt

<?php
include_once ("/volume1/web/mysql_settings_el_a.php");
# Connect to the database and select a db
mysql_connect ($mysqlHost, $mysqlUsername, $mysqlPassword);
mysql_select_db ($mysqlDatabase);
$result = mysql_query("SELECT DATE_FORMAT( DATE, '%Y-%m' ) AS Manad, (
MAX( counts ) - MIN( counts )
) /10000 AS EL
FROM temps
WHERE DATE
BETWEEN DATE_SUB( NOW( ) , INTERVAL 12 
MONTH ) 
AND NOW( ) 
GROUP BY LEFT( DATE, 10 ) 
ORDER BY Manad DESC");
//Table starting tag and header cells
echo "<table border='1'><tr><th>Månad</th><th>Elförbrukning</th></tr>";
while($row = mysql_fetch_array($result)){
//Display the results in different cells
echo "<tr><td>" . $row['Manad'] . "</td><td>" . $row['EL'] . "</td></tr>";
//Table closing tag
echo "</table>";
?>

Re: Hjälp med PHP och MySQL

Postat: 25 aug 2012, 00:29
av Bergalot
Tja!

Berätta lite vad du vill få ut av mysql kommandot. Så kanske det blir lättare att hjälpa dig.

Är inte så haj på msql kommadon men gissar på att de är något fel på din långa query.

Jag skulle börja med att lägga in lite säkerhetscheckar vid anslutningen till mysql-databasen.
T.ex:

Kod: Markera allt

$link = mysql_connect ($mysqlHost, $mysqlUsername, $mysqlPassword);
if(!$link) {
die('Failed to connect to server: ' . mysql_error());
}
$db = mysql_select_db ($mysqlDatabase);
if(!$db) {
die("Unable to select database");		
}

Re: Hjälp med PHP och MySQL

Postat: 25 aug 2012, 09:20
av jompa68
Hej igen, fick fart på det efter man har fått sovit lite och börjat om med "tänket" nu på morgonen :)
Gjorde som du sa Bergalot och la in lite checks i koden och såg att uppkopplingen var ok iaf.
Felet var lite längre ner i koden...ett par hakar på fel ställe :oops:

Så här blev resultatet iaf, och jag blev nöjd :D

Kod: Markera allt

<?php
include_once ("/volume1/web/mysql_settings_el_a.php");
# Connect to the database and select a db
mysql_connect ($mysqlHost, $mysqlUsername, $mysqlPassword) or die(mysql_error());
# echo "Connected to MySQL<br />";
 mysql_select_db ($mysqlDatabase) or die(mysql_error());
# echo "Connected to Database";
# Get data from db and store it in a array
$result = mysql_query("SELECT DATE_FORMAT( DATE, '%Y-%m' ) AS Manad, (
MAX(counts) - MIN(counts)
) /10000 AS EL
FROM temps
WHERE DATE
BETWEEN DATE_SUB( NOW( ) , INTERVAL 12 
MONTH ) 
AND NOW( ) 
GROUP BY LEFT( DATE, 5 ) 
ORDER BY Manad DESC");
# Table starting tag and header cells
echo "<table border='0'><tr><th>Månad</th><th>Elförbrukning</th></tr>";
while($row = mysql_fetch_array($result)){
# Display the results in different cells
echo "<tr><td width=100 align=center>" . $row['Manad'] . "</td><td width=150 align=center>" . $row['EL'] . "</td></tr>";

}
# Table closing tag
echo "</table>";
?>

Re: Hjälp med PHP och MySQL

Postat: 25 aug 2012, 11:02
av Bergalot
Sitter å kikar lite på queryn. Hur fungerar den?

Antar att du har sparat impulser och att du har en elmätare som visar 10000/kWh.
meningen är väl att visa antalet kwh per månad? :)

Re: Hjälp med PHP och MySQL

Postat: 26 aug 2012, 10:31
av jompa68
Queryn visar elförbrukning per månad och nu även kostnad. Lagt in mitt avtalspris i query.

Kod: Markera allt

<?php
include_once ("/volume1/web/mysql_settings_el_a.php");
# Connect to the database and select a db
mysql_connect ($mysqlHost, $mysqlUsername, $mysqlPassword) or die(mysql_error());
# echo "Connected to MySQL<br />";
 mysql_select_db ($mysqlDatabase) or die(mysql_error());
# echo "Connected to Database";
# Get data from db and store it in a array
$result = mysql_query("SELECT DATE_FORMAT( DATE, '%Y-%m' ) AS Manad, (
MAX(counts) - MIN(counts)
) /10000 AS EL, (
MAX(counts) - MIN(counts)
) /10000 * 0.973 as Kostnad
FROM temps
WHERE DATE
BETWEEN DATE_SUB( NOW( ) , INTERVAL 12 
MONTH ) 
AND NOW( ) 
GROUP BY LEFT( DATE, 5 ) 
ORDER BY Manad DESC");
# Table starting tag and header cells
echo "<table border='0'><tr><th><h2>Månad</h2></th><th><h2>Elförbrukning</h2></th><th><h2>Kostnad</h2></th></tr>";
while($row = mysql_fetch_array($result)){
# Display the results in different cells
echo "<tr><td width=100 align=center>" . $row['Manad'] . "</td><td width=150 align=center>" . number_format($row['EL'],2) . " kWh</td><td width=150 align=center>" . number_format($row['Kostnad'],2) . " SEK</td></tr>";

}
# Table closing tag
echo "</table>";
?>