PHP Ajax Realtime автоматически сохраняет Fwrite в config.txt - PullRequest
0 голосов
/ 21 января 2012

Я пытаюсь это выяснить, но мне действительно приходится 2-й день за попытки кода и поиска ...

Попытка увидеть руководство, если я иду в правильном направлении с помощью AJAX и автосохранение, когда пользователь выполняет действие с кнопкой (НО мне нужно иметь config.txt)

Поскольку это скорее приложение, работающее в активном режиме для включения / отключения действия с настраиваемыми параметрами, необходимыми на лету.

Попытка (при загрузке страницы) прочитать файл config.txt (и автоматически изменить значения в форме на то, что было прочитано из config.txt, как двухсторонняя асинхронная (без перезагрузки страницы)

config.txt

    active=1
    email=1
    markets=chi,nyc,orl,sfo
    timer=15
    emailaddress=test@gmail.com
    logviewer=1

так что на рынках есть возможность добавить 1 или более, мне нужно разместить с запятыми ...

Таким образом, когда active = 1 включен, в фоновом режиме находится bash-скрипт, который будет выполняться на основе выбора активного (когда пользователь установит флажок В РЕАЛЬНОМ ВРЕМЕНИ) ... (onclick)

ГЛАВНЫЙ HTML

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>....Tools....</title>


<script src="js/ajaxsbmt.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" media="all" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.11/themes/ui-darkness/jquery-ui.css"/>


<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1/jquery-ui.min.js"></script>
<script type="text/javascript" src="../src/jquery.multiselect.js"></script>
<script type="text/javascript" src="../src/jquery.multiselect.filter.js"></script>
<script type="text/javascript" src="assets/prettify.js"></script>

<link rel="stylesheet" type="text/css" href="../jquery.multiselect.css" />
<link rel="stylesheet" type="text/css" href="assets/style.css" />
<link rel="stylesheet" type="text/css" href="assets/prettify.css" />
<link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1/themes/ui-lightness/jquery-ui.css" />

<script type="text/javascript">
$(function(){
    $("select").multiselect({
        selectedList: 4
    });

    $("select").multiselect().multiselectfilter();
});
</script>

<script type="text/javascript">
function autosave()
{
    if (window.XMLHttpRequest)
    {// code for IE7+, Firefox, Chrome, Opera, Safari
        xmlhttp=new XMLHttpRequest();
    }
    else
    {// code for IE6, IE5
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    xmlhttp.onreadystatechange=function()
    {
        if (xmlhttp.readyState==4 && xmlhttp.status==200)
        {
            document.getElementById("poll").innerHTML=xmlhttp.responseText;
        }
    }
    xmlhttp.open("GET","save.php?data="+data,true);

    if (multiple_id == "marketlist")
    {
        xmlhttp.send($value1","$value2","$value3","$value4",")
        // NEED TO FIGURE OUT HOW TO POST it as  CHI,ATL,NYC  or however many selected with comma seperated values as the line item Hmmmmmmmmm
    }
}
</script>
</head>
<body>
<div id="TESTING">
    <h3>ENABLE Debug LOG VIEWER</h3>
    <form>
        Yes:
        <input type="radio" id="logger" name="logviewer" value="logger=1" onclick="autosave(this.value)" />
        <br />No:
        <input type="radio" id="logger" name="logviewer" value="logger=0" onclick="autosave(this.value)" />
    </form>
</div>
<div id="page">
    <ul>
        <li><label for="ch_effects">ENABLE Diaster Script:</label><input type="checkbox" id="ch_enable" name="ch_enable" data-on="Enable" data-off="Disable" onclick="autosave(this.value)" /></li>


Select Markets To be monitored

<form>
<form name="mkts" method="post" action="save.php">
    <select name="marketlist" multiple="multiple" style="width:600px">
        <option value="CHI">Chicago-CHI</option>
        <option value="CHI">Baltimore-BAL</option>
        <option value="NYC">New York-NYC</option>
        <option value="BDR">Bridgeport-BDR</option>
        <option value="PHL">Philadelphia-PHL</option>
        <option value="PHL">Pittsburgh-PIT</option>
        <option value="ORL">Orlando-ORL</option>
    </select>

    <input type="submit" id="marketlist" value="what is selected Seperate by Commas" name="submit" onclick="autosave(this.value)" />
</p>

    <li><label for="ch_location">Email notifications</label><input type="checkbox" id="ch_emailnotify" name="ch_emailnotify" data-on="ON" data-off="OFF" onchange="autosave(this.value)"/></li>
    <li><label for="ch_emails">Realtime log view</label><input type="checkbox" id="ch_logview" name="ch_logview" data-on="Show" data-off="Hide" onchange="autosave(this.value)"/></li>
  </ul>

            <p>


            <div>
                <input id="email" name="email" class="element text medium" type="text" maxlength="255" value="" onchange="autosave(this.value)"/> 
            </div>
            <li class="buttons">
                <input type="hidden" name="form_id" value="CONFIG" />

                <input id="saveForm" class="button_text" type="submit" name="submit" value="Submit" />
            </li>
        </ul> 
    </form>
</body>
</html>

SAVE.PHP

<?php
$logger = $_REQUEST["logger"];
$active = $_REQUEST["ch_enable"];
$marketlist = $_REQUEST["marketlist"];
$emailnotify = $_REQUEST["ch_emailnotify"];

$filename="config.txt";
$act = "active='$active'";
$log = "logger='$logger'";
$mkt = "markets='$marketlist'";
$eml = "email='$emailnotify'";


$fin=fopen($filename,"w");

fwrite($fin,$content);

if ( $act = "" ) {
    $cmd = "grep 'active=' " . $filename;
    $output = system($cmd, $result);
    $lines = explode("\n", $result);
}



if ( $log != "" ) {
    $cmd = "grep 'logger=' " . $filename;
    $output = system($cmd, $result);
    $lines = explode("\n", $result);
}

if ( $mkt != "" ) {
    $cmd = "grep 'markets=' " . $filename;
    $output = system($cmd, $result);
    $lines = explode("\n", $result);
}

if ( $eml != "" ) {
    $cmd = "grep 'email=' " . $filename;
    $output = system($cmd, $result);
    $lines = explode("\n", $result);
}

fclose($fin);
echo "Data saved";
?>
...