Beispiel #1
0
function quote_values($values)
{
    $quoted_values = array();
    foreach ($values as $value) {
        $quoted_values[] = quote_value($value);
    }
    return implode(", ", $quoted_values);
}
Beispiel #2
0
            }
            mysql_query($sqlalter, $con) or die(mysql_error());
            mysql_query($sqlalterkey, $con) or die(mysql_error());
        }
    }
    // The way session uploads work, there's a separate HTTP call for each datapoint.  This is why raw logs is
    //  so huge, and has so much repeating data. This is my attempt to flatten the redundant data into the
    //  sessions table; this code checks if there is already a row for the current session, and if there is, only
    //  update the ending time and the count of datapoints.  If there isn't a row, insert one.
    $rawkeys = array_merge($keys, $sesskeys, $sessprofilekeys);
    $rawvalues = array_merge($values, $sessvalues, $sessprofilevalues);
    if (sizeof($rawkeys) === sizeof($rawvalues) && sizeof($rawkeys) > 0 && sizeof($sesskeys) === sizeof($sessvalues) && sizeof($sesskeys) > 0) {
        // Now insert the data for all the fields into the raw logs table
        $sql = "INSERT INTO {$db_table} (" . quote_names($rawkeys) . ") VALUES (" . quote_values($rawvalues) . ")";
        //echo $sql;
        mysql_query($sql, $con) or die(mysql_error());
        // See if there is already an entry in the sessions table for this session
        $sessionqry = mysql_query("SELECT session, sessionsize FROM {$db_sessions_table} WHERE session LIKE " . quote_value($sessuploadid), $con) or die(mysql_error());
        $sesssizecount = 1;
        // If there's an entry in the session table for this session, update the session end time and the datapoint count
        while ($row = mysql_fetch_assoc($sessionqry)) {
            $sesssizecount = $row["sessionsize"] + 1;
        }
        $sessionqrystring = "INSERT INTO {$db_sessions_table} (" . quote_names($sesskeys) . ", timestart, sessionsize) VALUES (" . quote_values($sessvalues) . ", {$sesstime}, '1') ON DUPLICATE KEY UPDATE timeend='{$sesstime}', sessionsize='{$sesssizecount}'{$sessprofilequery}";
        //echo $sessionqrystring;
        mysql_query($sessionqrystring, $con) or die(mysql_error());
    }
}
mysql_close($con);
// Return the response required by Torque
echo "OK!";
Beispiel #3
0
function insert_row($table, $values)
{
    global $dbConn, $dbResult;
    $sql = "INSERT INTO " . $table . " ";
    $columns = array();
    $vals = array();
    while (list($key, $data_description) = each($values)) {
        $type = $data_description['type'];
        $value = $data_description['value'];
        $value_sql = quote_value($type, $value);
        array_push($columns, $key);
        array_push($vals, $value_sql);
    }
    $sql .= "(" . implode(", ", $columns) . ") ";
    $sql .= " VALUES (" . implode(", ", $vals) . ")";
    $dbResult = odbc_exec($dbConn, $sql);
}
Beispiel #4
0
<?php

//echo "<!-- Begin del_session.php at ".date("H:i:s", microtime(true))." -->\r\n";
// this page relies on being included from another page that has already connected to db
if (!isset($_SESSION)) {
    session_start();
}
if (isset($_POST["deletesession"])) {
    $deletesession = preg_replace('/\\D/', '', $_POST['deletesession']);
} elseif (isset($_GET["deletesession"])) {
    $deletesession = preg_replace('/\\D/', '', $_GET['deletesession']);
}
if (isset($deletesession) && !empty($deletesession)) {
    $delresult = mysql_query("DELETE FROM {$db_table}\n                          WHERE session=" . quote_value($deletesession), $con) or die(mysql_error());
    mysql_free_result($delresult);
    $delresult = mysql_query("DELETE FROM {$db_sessions_table}\n                          WHERE session=" . quote_value($deletesession), $con) or die(mysql_error());
    mysql_free_result($delresult);
}
//echo "<!-- End del_session.php at ".date("H:i:s", microtime(true))." -->\r\n";
Beispiel #5
0
<?php

require_once "./db.php";
if (isset($_GET["sid"])) {
    $session_id = $_GET['sid'];
    // Get data for session
    $output = "";
    $sql = mysql_query("SELECT * FROM {$db_table} join {$db_sessions_table} on {$db_table}.session = {$db_sessions_table}.session WHERE {$db_table}.session=" . quote_value($session_id) . " ORDER BY {$db_table}.time DESC;") or die(mysql_error());
    if ($_GET["filetype"] == "csv") {
        $columns_total = mysql_num_fields($sql);
        // Get The Field Name
        for ($i = 0; $i < $columns_total; $i++) {
            $heading = mysql_field_name($sql, $i);
            $output .= '"' . $heading . '",';
        }
        $output .= "\n";
        // Get Records from the table
        while ($row = mysql_fetch_array($sql)) {
            for ($i = 0; $i < $columns_total; $i++) {
                $output .= '"' . $row["{$i}"] . '",';
            }
            $output .= "\n";
        }
        mysql_free_result($sql);
        // Download the file
        $csvfilename = "torque_session_" . $session_id . ".csv";
        header('Content-type: application/csv');
        header('Content-Disposition: attachment; filename=' . $csvfilename);
        echo $output;
        exit;
    } else {
Beispiel #6
0
 $keyquery = mysql_query("SELECT id,description,units FROM {$db_name}.{$db_keys_table};") or die(mysql_error());
 $keyarr = [];
 while ($row = mysql_fetch_assoc($keyquery)) {
     $keyarr[$row['id']] = array($row['description'], $row['units']);
 }
 // 2015.08.04 - edit by surfrock66 - Adding experimental support for unlimited vars,
 //   while requiring no default PID
 $selectstring = "time";
 $i = 1;
 while (isset($_GET["s{$i}"])) {
     ${'v' . $i} = $_GET["s{$i}"];
     $selectstring = $selectstring . "," . quote_name(${'v' . $i});
     $i = $i + 1;
 }
 // Get data for session
 $sessionqry = mysql_query("SELECT {$selectstring} FROM {$db_table} WHERE session=" . quote_value($session_id) . " ORDER BY time DESC;") or die(mysql_error());
 while ($row = mysql_fetch_assoc($sessionqry)) {
     $i = 1;
     while (isset(${'v' . $i})) {
         if (substri_count($keyarr[${'v' . $i}][0], "Speed") > 0) {
             $x = intval($row[${'v' . $i}]) * $speed_factor;
             ${'v' . $i . '_measurand'} = $speed_measurand;
         } elseif (substri_count($keyarr[${'v' . $i}][0], "Temp") > 0) {
             $x = $temp_func(floatval($row[${'v' . $i}]));
             ${'v' . $i . '_measurand'} = $temp_measurand;
         } else {
             $x = intval($row[${'v' . $i}]);
             ${'v' . $i . '_measurand'} = ' (' . $keyarr[${'v' . $i}][1] . ')';
         }
         ${'d' . $i}[] = array($row['time'], $x);
         ${'spark' . $i}[] = $x;
Beispiel #7
0
    }
    $mergeqry = mysql_query($qrystr) or die(mysql_error());
    $mergerow = mysql_fetch_assoc($mergeqry);
    $newsession = $mergerow['session'];
    $newtimestart = $mergerow['timestart'];
    $newtimeend = $mergerow['timeend'];
    $newsessionsize = $mergerow['sessionsize'];
    mysql_free_result($mergeqry);
    foreach ($sessionids as $value) {
        if ($value == $newsession) {
            $updatequery = "UPDATE {$db_sessions_table} SET timestart={$newtimestart}, timeend={$newtimeend}, sessionsize={$newsessionsize} where session={$newsession}";
            mysql_query($updatequery, $con) or die(mysql_error());
        } else {
            $delquery = "DELETE FROM {$db_sessions_table} WHERE session = '{$value}'";
            mysql_query($delquery, $con) or die(mysql_error());
            $updatequery = "UPDATE {$db_table} SET session={$newsession} WHERE session=" . quote_value($value);
            mysql_query($updatequery, $con) or die(mysql_error());
        }
    }
    //Show merged session
    $session_id = $mergesession;
    header('Location: session.php?id=' . $mergesession);
} elseif (isset($mergesession) && !empty($mergesession)) {
    ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Open Torque Viewer</title>
Beispiel #8
0
        $val = strip_tags(trim($val));
        //from the fieldname:id we need to get id
        $split_data = explode(':', $field_id);
        $id = $split_data[1];
        $field_name = $split_data[0];
        echo "\nField Name: '{$field_name}'\nField ID: '{$id}'\nValue: '{$val}'\n";
        if (!empty($id) && !empty($field_name) && !empty($val)) {
            if ($field_name == 'populated') {
                if ($val == 'true') {
                    $val = 1;
                } else {
                    $val = 0;
                }
            }
            //update the values
            $query = "UPDATE {$db_name}.{$db_keys_table} SET " . quote_name($field_name) . " = " . quote_value($val) . " WHERE id = " . quote_value($id);
            echo "\n{$query}\n";
            mysql_query($query) || die(mysql_error());
            if ($field_name == 'type') {
                $query = "ALTER TABLE {$db_name}.{$db_table} MODIFY " . quote_name($id) . " " . mysql_real_escape_string($val) . " NOT NULL DEFAULT '0'";
                echo $query;
                mysql_query($query) || die(mysql_error());
            }
            echo "Updated";
        } else {
            echo "Invalid Requests 1";
        }
    }
} else {
    echo "Invalid Requests 2";
}
Beispiel #9
0
    $sessionqrystring = $sessionqrystring . "WHERE ( ";
    if ($filteryear != "%") {
        $sessionqrystring = $sessionqrystring . $sqlqryyear;
        $andselector = " AND ";
    }
    if ($filtermonth != "%") {
        $sessionqrystring = $sessionqrystring . $andselector . $sqlqrymonth;
        $andselector = " AND ";
    }
    if ($filterprofile != "%") {
        $sessionqrystring = $sessionqrystring . $andselector . $sqlqryprofile;
    }
    $sessionqrystring = $sessionqrystring . " ) ";
}
if (isset($_GET['id'])) {
    $sessionqrystring = $sessionqrystring . $orselector . "( session LIKE " . quote_value($_GET['id']) . " )";
}
$sessionqrystring = $sessionqrystring . " GROUP BY session, profileName, timestart, timeend, sessionsize ORDER BY session DESC";
// Get list of unique session IDs
$sessionqry = mysql_query($sessionqrystring, $con) or die(mysql_error());
// Create an array mapping session IDs to date strings
$seshdates = array();
$seshsizes = array();
$seshprofile = array();
while ($row = mysql_fetch_assoc($sessionqry)) {
    $session_duration_str = gmdate("H:i:s", ($row["timeend"] - $row["timestart"]) / 1000);
    $session_profileName = $row["profileName"];
    // Drop sessions smaller than 60 data points
    //if ($row["sessionsize"] >= 60) {
    if ($row["sessionsize"] >= 20) {
        $sid = $row["session"];