<?php include "common.php"; $query = json_decode(getdef($_GET, 'q', '{}'), TRUE); $ds1 = filteralpha(getdef($query, 'dataset1', '')); $ds2 = filteralpha(getdef($query, 'dataset2', '')); if ($ds1 == "" && $ds2 == "") { $ps = pg_prepare($db, 'getgene', "SELECT DISTINCT * FROM godm NATURAL JOIN goinfo"); $rs = pg_execute($db, 'getgene', array()); } else { $ps = pg_prepare($db, 'getgene', "SELECT DISTINCT * FROM godm NATURAL JOIN goinfo WHERE dataset1=\$1 AND dataset2=\$2 ORDER BY pvalue"); $rs = pg_execute($db, 'getgene', array($ds1, $ds2)); } echo '"dataset1","dataset2","goid","goname","pvalue","tscore"' . "\n"; while ($line = pg_fetch_array($rs, null, PGSQL_ASSOC)) { echo '"' . $line["dataset1"] . '","' . $line["dataset2"] . '","' . $line["goid"] . '","' . $line["goname"] . '","' . $line["pvalue"] . '","' . $line["tscore"] . "\"\n"; } pg_free_result($rs); ### Return result #header('Content-Type: application/json; '); #header('filename="godm.json"; '); include "end.php";
<?php include "common.php"; $query = json_decode(getdef($_GET, 'q', '{}'), TRUE); $ds1 = filteralpha(getdef($query, 'dataset', '')); if ($ds1 == "") { $ps = pg_prepare($db, 'getgene', "SELECT DISTINCT * FROM genedm"); $rs = pg_execute($db, 'getgene', array()); } else { $ps = pg_prepare($db, 'getgene', "SELECT DISTINCT * FROM genedm WHERE dataset=\$1"); $rs = pg_execute($db, 'getgene', array($ds1)); } echo '"dataset","geneid","genedm"' . "\n"; while ($line = pg_fetch_array($rs, null, PGSQL_ASSOC)) { echo '"' . $line["dataset"] . '","' . $line["geneid"] . '","' . $line["genedm"] . "\"\n"; } pg_free_result($rs); ### Return result #header('Content-Type: application/json; '); #header('filename="godm.json"; '); include "end.php";
<?php include "common.php"; $query = json_decode(getdef($_GET, 'q', '{}'), TRUE); $geneid = getdef($query, 'geneset', array("ENSMUSG00000000126", "ENSMUSG00000000028")); $graphw = filteralpha(getdef($query, 'graphw', 500)); $dataset = filteralpha(getdef($query, 'dataset', 'es_lif')); $cmd = "echo 'genes <- c();"; foreach ($geneid as $s) { $cmd = $cmd . "genes <- c(genes,\"" . filteralpha($s) . "\");"; } $cmd = $cmd . "graphw<-" . $graphw . ";"; $cmd = $cmd . "dataset<-\"" . $dataset . "\";"; $cmd = $cmd . "source(\"corrgenegene.R\")' | /usr/bin/R --vanilla --slave"; #echo $cmd; $handle = popen($cmd, "r"); $ret = ""; do { $data = fread($handle, 8192); if (strlen($data) == 0) { break; } $ret .= $data; } while (true); pclose($handle); header("Cache-Control: no-cache, must-revalidate"); if (strlen($ret) == 0) { echo "error running " . $cmd; } else { header("Content-type:image/png"); echo $ret;
<?php include "common.php"; $query = json_decode(getdef($_GET, 'q', '{}'), TRUE); $geneid = getdef($query, 'geneset', array("ENSMUSG00000000126", "ENSMUSG00000000028")); $datasets = getdef($query, 'datasets', array("ola_a2i")); $graphw = filteralpha(getdef($query, 'graphw', 500)); $cmd = "echo 'genes <- c();"; foreach ($geneid as $s) { $cmd = $cmd . "genes <- c(genes,\"" . filteralpha($s) . "\");"; } $cmd = $cmd . "datasets <- c();"; foreach ($datasets as $s) { $cmd = $cmd . "datasets <- c(datasets,\"" . filteralpha($s) . "\");"; } $cmd = $cmd . "graphw<-" . $graphw . ";"; $cmd = $cmd . "source(\"corrgenecell.R\")' | /usr/bin/R --vanilla --slave"; $handle = popen($cmd, "r"); $ret = ""; do { $data = fread($handle, 8192); if (strlen($data) == 0) { break; } $ret .= $data; } while (true); pclose($handle); header("Cache-Control: no-cache, must-revalidate"); if (strlen($ret) < 100) { #for any errors? echo "error running " . $cmd;
<?php ini_set('memory_limit', '512M'); ## http://localhost/geneinfo.php?q={%22gene%22:%22ENSMUSG00000000049%22} include "common.php"; $query = json_decode(getdef($_GET, 'q', '{}'), TRUE); $geneid = filteralpha(getdef($query, 'gene', '')); ### Query database for expression counts, for all datasets $time_getgene = microtime(); $ps = pg_prepare($db, 'getgene', 'SELECT * FROM geneexp WHERE fromgene=$1'); $rs = pg_execute($db, 'getgene', array($geneid)); $resultsexp = array(); while ($line = pg_fetch_array($rs, null, PGSQL_ASSOC)) { $resultsexp[$line['dataset']] = array('fromcell' => splitcomma($line['fromcell']), 'exp' => splitcomma($line['exp'])); } pg_free_result($rs); $time_getgene = microtime() - $time_getgene; $results = array(); $results['dataset'] = $resultsexp; $results['geneid'] = $geneid; ### Query database for gene info --- this particular gene $time_getgenei = microtime(); $ps = pg_prepare($db, 'getgenei', 'SELECT * FROM geneinfo WHERE geneid=$1 LIMIT 1'); $rs = pg_execute($db, 'getgenei', array($geneid)); while ($line = pg_fetch_array($rs, null, PGSQL_ASSOC)) { $results['genesym'] = $line['genesym']; } pg_free_result($rs); $time_getgenei = microtime() - $time_getgenei; ### Query database for DM $time_getgenedm = microtime();