--- a/solr.php
+++ b/solr.php
@@ -1,1 +1,60 @@
+createPing();
+
+// execute the ping query
+try {
+ $result = $solr_client->ping($ping);
+ echo 'Ping query successful';
+ echo '
';
+ var_dump($result->getData());
+ echo '
';
+} catch (Solarium\Exception $e) {
+ echo 'Ping query failed';
+}
+
+
+$update = $solr_client->createUpdate();
+$update->addCommit();
+
+// this executes the query and returns the result
+$result = $solr_client->update($update);
+
+echo 'Update query executed
';
+echo 'Query status: ' . $result->getStatus(). '
';
+echo 'Query time: ' . $result->getQueryTime();
+
+$buffer = $solr_client->getPlugin('bufferedadd');
+$buffer->setBufferSize(500);
+$page = 583728;
+while ($conn) {
+ echo ($page++).PHP_EOL;
+ $stmt = $conn->prepare('SELECT * FROM contractnotice ORDER BY "CNID" LIMIT 1000 OFFSET '.($page*1000));
+ $stmt->execute();
+ $rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
+foreach ($rows as $row) {
+
+
+// create a new document for the data
+$data = array("id" => $row["CNID"]);
+foreach ($row as $key => $value) {
+if ($key != 'atmID' && $key != 'CNID' && $key != 'supplierPostcode' && $key != 'contactPostcode') {
+if ($key == 'value') {
+$value = intval($value);
+}
+if ($key == 'publishDate' || $key == 'importDate') {
+$value = explode(" ",$value)[0];
+}
+$value = preg_replace( '/[^[:print:]]/', '',$value);
+$data[$key] = $value;
+}
+//print_r($data);
+ $buffer->createDocument($data);
+}
+}
+}
+$buffer->flush();
+