Pobieranie danych z Bazy danych

0

Dzień dobry,

Postanowiłem sobie podszkolić PHP i odczyty danych z bazy. Postanowiłem bazować na gotowych skryptach i zacząłem je analizować. Zacząłem projekt na Raspberry Pi Domoticz sterowanie oświetleniem bramą itp. Dołożyłem ostatnio termometr DS18B20.

Problem w tym, że skrypt nie działa choć autor o tym zapewnia. Temat jest dość stary i nikt tam nie odpowiada. Chciałbym przy okazji czegoś się nauczyć a moje podstawy tez są trochę wiekowe. Otóż mam zainstalowanego Apache2 phpmyadmin oraz MariaDB.

W pythonie mam zrobiony już skrypt czytający dane z termometru i zapisujący do bazdu. Baza jest prosta ma 1 tabele temperature_monitor, która zawiera identyfikator, termometr date i temperature.

<?
error_reporting(E_ALL);
ini_set('display_errors', 1);
?>
<HTML>
<HEAD>
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
<TITLE>Temperatura na zewnątrz</TITLE>
        <style type="text/css">
        <!--
        BODY {
                color: #353535;
                font-family: Tahoma, Verdana, MS Sans Serif, Arial CE, Arial, Helvetica;
                font-size: 9pt;
                background-color: #EEE;
                margin-left: 100;
                margin-top: 25;
                }
       table, th, td {
                border: 1px solid black;
                }
       td {
        padding: 10px;
       }
-->
        </style>
</HEAD>
<BODY>
 
<h2>Temperatura na zewnątrz</h2>
 
<table border="0">
<tr>
        <td>LP</td>
        <td>CZUJNIK</td>
        <td>DATA</td>
        <td>TEMPERATURA</td>
</tr>
 
<?
mysql_connect('localhost',"pi_user","password");
@mysql_select_db("temp_base") or die( "Unable to select database");
$result = mysql_query ("SELECT * FROM temperature_monitor;") or die ("error select");
while ($record = mysql_fetch_array ($result))
        {
        $identfikator = $record[0];
        $termometr = $record[1];
        $data = $record[2];
        $temperatura = $record[3];
 
 
echo "<tr>
        <td> $identfikator </td>
        <td> $termometr </td>
        <td> $data </td>
        <td> $temperatura </td>
</tr>
";
}
?>
</table>
 
</BODY>
</HTML>

Strona się uruchamia jednak strona nie pobiera z bazy danych. Wyświetla tabele a w tabeli $identfikator, $termometr, $data, $temperatura.

Gdzie robię błąd. Czytałem sporo na ten temat i widzę, że nie pobiera danych z bazy. Dane wpisuje na pewno dobre, sprawdzalem na innych skryptach, baze tworzyłem od nowa nic to nie daje.

0

To znaczy, nie interpoluje Ci zmiennych w stringach?
Spróbuj na raty

echo "<tr>";
echo "<td>", $identfikator, "</td>";
echo "<td>", $termometr, "</td>";
itd.
0

mysql ? chyba mysqli

mysql toi juz sie nie uzywa

0

Jeżeli już bawisz się z bazą danych to najlepiej zrób to przez PDO:

https://www.php.net/manual/en/book.pdo.php

Najpierw połączenie do bazy:

https://www.php.net/manual/en/pdo.construct.php

a potem zapytanie:

https://www.php.net/manual/en/pdo.query.php

0

A może zamień <? na <?php

1 użytkowników online, w tym zalogowanych: 0, gości: 1