function setGpio($gpio, $value) { //logToFile("GPIO: setze gpio: $gpio value: $value"); //$value = intval($value); //Schalten GPIO $sql = query("select toggle_gpio from aktor WHERE gpio = '" . $gpio . "'"); $row = fetch($sql); //var_dump($row); if ($row[toggle_gpio] > 0) { //echo "toggle!"; if ($value == 0) { $out = file_put_contents('/sys/class/gpio/gpio' . $gpio . '/value', "0"); logToFile("GPIO Manuell(Toogle): setze gpio: {$gpio} value: 0"); sleep(1); if (!getGpio($gpio)) { $out = file_put_contents('/sys/class/gpio/gpio' . $row[toggle_gpio] . '/value', "1"); logToFile("GPIO Manuell(Toogle): setze gpio: {$row['toggle_gpio']} value: 1"); //shell_exec("./setGpio_intervall.sh " . $row[toggle_gpio] . " 0 60 > /dev/null 2>/dev/null &" ); //logToFile("GPIO Manuell(Toogle): setze gpio nach 60s: $row[toggle_gpio] value: 0 "); } } elseif ($value == "1") { $out = file_put_contents('/sys/class/gpio/gpio' . $row[toggle_gpio] . '/value', 0); logToFile("GPIO Manuell(Toogle): setze gpio: {$row['toggle_gpio']} value: 0"); sleep(1); if (!getGpio($row[toggle_gpio])) { $out = file_put_contents('/sys/class/gpio/gpio' . $gpio . '/value', "1"); logToFile("GPIO Manuell(Toogle): setze gpio: {$gpio} value: 1"); } } } elseif ($row[toggle_gpio] == 0) { $out = file_put_contents('/sys/class/gpio/gpio' . $gpio . '/value', $value); logToFile("GPIO Manuell: setze gpio: {$gpio} value: {$value}"); } //Datenbank Aktuallisieren $sql = query("SELECT * FROM aktor WHERE gpio = '" . $gpio . "'"); $row = fetch($sql); $zeitEin = $row['zeitEin']; //echo $value; if ($value == 'on' || $value > 0) { // Doppeltes Einschalten verhindern if ($zeitEin == 0) { $sql = query("UPDATE aktor SET zeitEin = '" . time() . "' WHERE gpio = '" . $gpio . "'"); } } elseif ($value == 'off' || $value == 0) { //var_dump($row['zeitEin']); // Doppeltes ausschalten verhindern if ($zeitEin > 0) { $zeitAus = time(); $zeitDelta = $zeitAus - $zeitEin; $zeitDelta = intval($zeitDelta); //rechneVerbrauch($pin,$zeitDelta); $zeitHeute = $row['zeitHeute'] + $zeitDelta; $sql = query("UPDATE aktor SET zeitEin = '0', zeitHeute = '" . $zeitHeute . "' WHERE gpio = '" . $gpio . "'"); } } }
?> " id="gpio-<?php echo $gpio[gpio]; ?> " data-role="slider" data-mini="true"> <option value="0">Aus</option> <option value="1">An</option> </select> </div> </li> </ul> <?php if ($iphone == "false") { echo "</div>"; } } else { $gpios = $gpios . $gpio[gpio] . "," . getGpio($gpio[gpio]) . ";"; /*for($z=0; $z < count($gpios); $z++){ list($name, $pin) = explode(",", $gpios[$z]); echo $pin . "," getGpio($pin); } */ } } if (isset($update)) { $gpios = substr($gpios, 0, -1); echo $gpios; } ?>