Все справился правда с большой помощью в написании PHP с профильного форума, но формы крутил сам. Ошибка оказалась в неправильном использовании мною форм. А в организации взаимодействия с базой данных ребята помогли, даже больше чем ожидал -типа красивого оформления и минимальной защитой от взлома базы
Итого - сделано все на оформлении выложенном Admin, состояние кнопки определяется значением в базе данных(пока на странице даже отражаются эти значения), нажатие меняет на противоположное, автообновление страницы пока убрал, буду докручивать обновление только по внешнему изменению базы, файл CSS не выкладываю, я его не менял.
Выглядит теперь так
http://bulatovor.ru/SwitchAll.shtml, 1 -ая кнопка соответственного первого стиля, вторая второго
файл обработчик передачи значения MySQL.php
PHP код:
<?php
// Подключаемся к БД
$domain = '************'; //это переменная в которую помещается адрес сайта на котором создана БД.
$db_name = '*********'; //это переменная в которую записывается имя БД.
$db_user = '**********'; //переменная в которую заноситься имя пользователя БД.
$db_pass = '************'; //переменная для хранения пароля пользователя БД.
$db_loc = 'localhost'; //переменная с полным адресом сервера на котором находится БД. Полный адрес используется вместо выражения "localhost", которое допускается на многих хостингах.
// Пытаемся соединиться с сервером базы данных MySQL
$db = @mysql_connect($db_loc, $db_user, $db_pass);
//Проверяем, удачно ли прошло подключение
if (!$db) {
echo( '<center><p><b>Невозможно подключиться к серверу базы данных !</b></p></center>');
exit();
}
//Проверяем доступность нужной БД
if (!@mysql_select_db($db_name, $db)) {
echo( '<center><p><b>База данных ' . $db_name . ' недоступна!</b></p></center>');
exit();
}
$value = mysql_real_escape_string($_GET['Zn']); // защищаем передаваемые сведения от SQL иньекций, говорят надо чтоб не перехватывали данные
$name = mysql_real_escape_string($_GET['Switch']);
$result = mysql_query("UPDATE `switch` SET `Zn`='{$value}' WHERE `ID`='{$name}'");
header("Location: " . $_SERVER['HTTP_REFERER']); // записываем изменения в БД
?>
ну и сама HTML обновление вида кнопок и формы передачи значений
PHP код:
<!**************************Получение сведений из базы данных и присвоение их переменным***********************>
<?php
// Выполняем все команды файла для подключения к базе данных config.php
include ('php/config.php');
/*Делаем запрос к БД*/
$result = mysql_query("SELECT Zn FROM switch WHERE ID='S1'",$db);
/*Преобразовываем результат в массив*/
$myrow = mysql_fetch_array($result);
/*делаем выборку столбца, присвоение переменной,выводим результат на экран цифрой для отладки*/
echo $lightOne=$myrow['Zn'];
/*Повторяем для выключателя 2*/
$result = mysql_query("SELECT Zn FROM switch WHERE ID='S2'",$db);
$myrow = mysql_fetch_array($result);
echo $lightTwo=$myrow['Zn'];
?>
<!**********************************КНОПКА 1 ***********************************>
</form>
<form action="php/MySQL.php" method="get" >
<?php if ($lightOne == '1') { ?>
<img src="images/On.png">
<?php } else { ?>
<img src="images/Off.png">
<?php } ?>
<input type="hidden" name="Switch" value="S1">
<button class="btn1" value="<?php if ($lightOne == '1'){ ?>0<?php } else { ?>1<?php } ?>" type="submit" name="Zn">Свет <?php if ($lightOne == '1') { ?>включен<?php } else { ?>выключен<?php } ?></button>
</form>
<!**********************************КНОПКА 2 ***********************************>
</form>
<form action="php/MySQL.php" method="get" >
<?php if ($lightTwo == '1') { ?>
<img src="images/On.png">
<?php } else { ?>
<img src="images/Off.png">
<?php } ?>
<input type="hidden" name="Switch" value="S2">
<button class="btn2" value="<?php if ($lightTwo == '1'){ ?>0<?php } else { ?>1<?php } ?>" type="submit" name="Zn">Свет <?php if ($lightTwo == '1') { ?>включен<?php } else { ?>выключен<?php } ?></button>
</form>
Все остальные вопросы , типа организации обмена между MySQL-портом компа-Arduino, уже будут выходить за рамки данной темы и будут рассмотрены в других темах, дабы не захламлять простую кнопку
З.Ы. Чтобы было легче разбираться - база данных имеет таблицу Switch с двумя столбцами ID - где названия переключателей типа S1,S2.... и Zn - значения состояния этих выключателей 0 и 1