[vz-users] MySQL / middleware.php - Abfrage aus externen PHP Script

applicationMGR ecoCuyo applicationMGR at ecoCuyo.de
Tue Oct 6 19:40:07 CEST 2015


Hi Sascha,

hab das aus dem Script vz_read_meter.php von Rudolf Reuter genommen und auf meine Belange umgebaut - hast Du das mal so probiert (hab bei mir channel_id = 5 in der volkzaehler DB - das musst Du auf Deine Kanäle anpassen) :

    $username=“DeinUser“;
    $password=“einPasswort“;


    $db = mysql_connect('localhost', $username, $password);
    if (!$db) {
        die('Verbindung schlug fehl: ' . mysql_error());
    }
    $db_vz = mysql_select_db(‚volkszaehler', $db);


    $channel_id_180="5"; /* (AK) DEBUG 1-0:1.8.0 Wirkarbeit Bezug (-) */
    $str_sql_180 = "SELECT value FROM data WHERE channel_id=$channel_id_180 AND timestamp BETWEEN $time_from AND $time_to LIMIT 0, 1";
    $sql_res_180 = mysql_query($str_sql_180);
    $row_180 = mysql_fetch_assoc($sql_res_180);
    $str_sql_OBIS_180 = "SELECT value FROM properties WHERE entity_id=$channel_id_180 AND pkey='title' LIMIT 0, 1";
    $sql_res_OBIS_180 = mysql_query($str_sql_OBIS_180);
    $row_OBIS_180 = mysql_fetch_assoc($sql_res_OBIS_180);
    //echo $str_sql_180 . "<br />"; /* (AK) DEBUG */


    if(isset($row_180["value"])){
       echo "<b>" . $row_OBIS_180["value"] .":</b> Zaehlerwert (" . ($row_180["value"]) . " / Faktor 1000) = <b>". ($row_180["value"]/1000) . "  kWh</b> ";
    }
    else {
       echo " ___ kWh " .$row_OBIS_180["value"] . " <br />";
    }


Kannst da ja mal rein kucken…

Beste Grüße
Armin


> Am 06.10.2015 um 19:11 schrieb Sascha Koszowyj <sascha.koszowyj at googlemail.com>:
> 
> 
>> Hi Zusammen,
>> 
>> kann mir vielleicht jemand helfen?
>> 
>> Liebe Grüße
>> Sascha
>> 
>> Am 04.10.2015 um 08:55 schrieb Sascha Koszowyj:
>>> 
>>>> Hi Jan,
>>>> 
>>>> Zur Variante SQL:
>>>> ja, habe es auch schon ohne Port 80 Probiert.....
>>>> 
>>>> Mein Test:
>>>>     $link = mysql_connect('192.168.0.31', 'Sascha', 'xxxx');
>>>>     if (!$link) {
>>>>         die('Verbindung schlug fehl: ' . mysql_error());
>>>>     }
>>>>     echo 'Erfolgreich verbunden';
>>>>     mysql_close($link);
>>>> 
>>>> Meldung: Verbindung schlug fehl: Lost connection to MySQL server at 'reading initial communication packet', system error: 111
>>>> 
>>>> Zur Variante middleware.php
>>>>   
>>>> Ich finde kein Script, welches z.B. mit den aktuellen Zählerstand in eine var abspeichert... 
>>>> Dort könnte ich mir dann die benötigten Informationen raus schneiden.
>>>> 
>>>> Ich bekomme es nur hin, den kompletten Return Wert des Json in einen TEXT mit der ID "XYZ" zu schrieben, aber nicht in eine Variable...
>>>> 
>>>> Im Java Teil :                        $('#Infofeld401').load( <http://192.168.0.31/middleware.php/data/eab32320-521a-11e5-a15f-fd9ac3270c21.json?from=now>"http://192.168.0.31/middleware.php/data/eab32320-521a-11e5-a15f-fd9ac3270c21.json?from=now" <http://192.168.0.31/middleware.php/data/eab32320-521a-11e5-a15f-fd9ac3270c21.json?from=now>); 
>>>> Im HTML Teil:                      <p id="Infofeld401">xxxx</p>
>>>> 
>>>> xxxx wird dann mit dem RETURN aus json überschieben....
>>>> 
>>>> Aber ich möchte den Wert (notfalls auch den kompletten Json RETUN) in einer Variablen haben.... Nur mit welchen Befehl geht dass?
>>>> 
>>>> Habe versucht:
>>>> var Zaehler1 = $GET("http://192.168.0.31/middleware.php/data/eab32320-521a-11e5-a15f-fd9ac3270c21.json?from=now" <http://192.168.0.31/middleware.php/data/eab32320-521a-11e5-a15f-fd9ac3270c21.json?from=now>); 
>>>> 
>>>> ... Leider ohne Erfolg...
>>>> 
>>>> Hast Du eine Idee?
>>>> 
>>>> LG
>>>> Sascha
>>>> 
>>>> 
>>>> 
>>>> Am 03.10.2015 um 21:39 schrieb Jan Goe:
>>>>> und wäre gut wenn du den kompletten php script postest, sonst kann man dir so gut wie nicht helfen :-(
>>>>> 
>>>>> gruß
>>>>> jan
>>>>> 
>>>>> Am 3. Oktober 2015 um 21:36 schrieb Martin Heinze < <mailto:heinze.martin at gmail.com>heinze.martin at gmail.com <mailto:heinze.martin at gmail.com>>:
>>>>> Ja genau ...
>>>>> 
>>>>> Siehe Hinweis von Andreas - lass mal das ":80" beim PHP-Aufruf weg - dann sollte es gehen.
>>>>> 
>>>>> 
>>>>> Am 03.10.2015 um 17:34 schrieb Sascha Koszowyj <sascha.koszowyj at googlemail.com <mailto:sascha.koszowyj at googlemail.com>>:
>>>>> 
>>>>>> Hallo Zusammen,
>>>>>> 
>>>>>> ich möchte gerne auf meiner Hausinternen WebSeite Werte aus dem Volkszähler anzeigen lassen....
>>>>>> 
>>>>>> Ich habe zwei Ansäte ausprobiert, bei beiden komme ich nicht weiter, hat jemand eine Idee?
>>>>>> 
>>>>>> 1.) Abfrage per SQL
>>>>>> <?php
>>>>>> mysql_connect('192.168.0.31:80 <http://192.168.0.31/>', 'Username', 'Passwort');
>>>>>> 
>>>>>> Ich bekomme keine Verbindung zum Server, warum nicht?
>>>>>> 
>>>>>> 2.) Abfrage über "middleware.php" in Java
>>>>>> 
>>>>>> $('#Infofeld401').load( <http://192.168.0.31/middleware.php/data/eab32320-521a-11e5-a15f-fd9ac3270c21.json?from=now>"http://192.168.0.31/middleware.php/data/eab32320-521a-11e5-a15f-fd9ac3270c21.json?from=now" <http://192.168.0.31/middleware.php/data/eab32320-521a-11e5-a15f-fd9ac3270c21.json?from=now>);  
>>>>>> 
>>>>>> Hier komme ich zwar an den Wert und kann Ihn in eine DEV ID schreiben.... Aber ich hätte den Wert gerne in einer Variablen....
>>>>>> $GET() geht nicht.... (Oder meine Syntax war falsch....
>>>>>> 
>>>>>> 
>>>>>> Wie habt Ihr dass ggf gelöst?
>>>>>> 
>>>>>> Vg
>>>>>> Sascha
>>>>> 
>>>> 
>>> 
>> 
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20151006/28baea7d/attachment.html>


More information about the volkszaehler-users mailing list