function add_article($query) { global $dbname; global $connection; $cmd = $query['command']; switch ($cmd) { case "new": $result = mysqli_query($connection, "SELECT * FROM Articles WHERE PMID = '" . $query['PMID'] . "'"); if (mysqli_num_rows($result) >= 1) { echo "ERROR: Article is already in the database"; } else { $q = "INSERT INTO Articles (Title, Authors, Abstract, Reference, PMID, DOI, Experiments, Metadata) VALUES("; $q .= "'" . mysqli_real_escape_string($connection, $query['Title']) . "'"; // CDATA removed, escape_string added $q .= ",'" . mysqli_real_escape_string($connection, $query['Authors']) . "'"; //mysql_real_escape_string($article['Authors']); $q .= ",'" . mysqli_real_escape_string($connection, $query['Abstract']) . "'"; //mysql_real_escape_string($article['Abstract']); $q .= ",'" . mysqli_real_escape_string($connection, $query['Reference']) . "'"; //mysql_real_escape_string($article['Reference']); $q .= ",'" . $query['PMID'] . "'"; //mysql_real_escape_string($article['PMID']); $q .= ",'" . $query['DOI'] . "'"; //mysql_real_escape_string($article['PMID']); $q .= ",'" . mysqli_real_escape_string($connection, $query['Experiments']) . "'"; //mysql_real_escape_string($article['Experiments']); // CDATA removed, escape_string added $q .= ",'" . $query['Metadata'] . "')"; //mysql_real_escape_string($article['Metadata'])."')"; $result2 = mysqli_query($connection, $q); if ($result2) { echo "SUCCESS. Query: " . $q; } else { echo "ERROR: Unable to process query: " . $q; } index_lucene($article, 0); } mysqli_free_result($result); break; case "experiments": $result = mysqli_query($connection, "SELECT * FROM Articles WHERE PMID = '" . $query['PMID'] . "'"); if (mysqli_num_rows($result) >= 1) { $q = "UPDATE Articles SET Experiments="; $q .= "'" . mysqli_real_escape_string($connection, $query['Experiments']) . "'"; // CDATA removed, escape_string added $q .= " WHERE PMID='" . $query['PMID'] . "'"; $result2 = mysqli_query($connection, $q); if ($result2) { echo "SUCCESS "; } else { echo "ERROR: Unable to process query: " . $q; } index_lucene($article, 0); } mysqli_free_result($result); break; case "metadata": $result = mysqli_query($connection, "SELECT * FROM Articles WHERE PMID = '" . $query['PMID'] . "'"); if (mysqli_num_rows($result) >= 1) { $q = "UPDATE Articles SET Metadata="; $q .= "'" . mysqli_real_escape_string($connection, $query['Metadata']) . "'"; // CDATA removed, escape_string added $q .= " WHERE PMID='" . $query['PMID'] . "'"; $result2 = mysqli_query($connection, $q); if ($result2) { echo "SUCCESS "; } else { echo "ERROR: Unable to process query: " . $q; } index_lucene($article, 0); } mysqli_free_result($result); break; } }
$success++; } else { echo "ERROR: Unable to process query: " . $q; } echo ".\n"; } mysqli_free_result($result); } /*------------------------------/ / Upload to Lucene / /------------------------------*/ if ($addToLucene) { $article["Title"] = $title; $article["Authors"] = $authors; $article["Abstract"] = $abstract; $article["Year"] = $year; $article["Journal"] = $journal; $article["PMID"] = $pmid; $article["Reference"] = $reference; $article["MeshHeadings"] = $mesh; if ($k == count($papers) - 1) { $optimise = 1; } else { $optimise = 0; } index_lucene($article, $optimise); } } echo "Total articles processes: " . count($papers) . "\n"; echo "Total uploaded: " . $uploaded . "\n"; echo "Total successfully added: " . $success . "\n";
user_logout(); break; case "article": article($_GET["PMID"]); break; case "article_json_pmid": article_json_pmid($_GET["PMID"]); break; case "article_json_doi": article_json_doi($_GET["PMID"]); break; case "search_lucene": search_lucene($_GET["query"]); break; case "index_lucene": index_lucene($_GET); break; case "add_article": add_article($_GET); break; case "get_article": get_article($_GET); break; case "get_concept": get_concept($_GET); break; case "add_log": add_log($_GET); break; case "get_log": get_log($_GET);