]> git.openstreetmap.org Git - nominatim.git/blobdiff - lib-php/website/search.php
Merge remote-tracking branch 'upstream/master'
[nominatim.git] / lib-php / website / search.php
index 619dec6d9b67aaf8f911737595f5686526741fa4..e1aab7940fa6770accac80578d13962d61a3b009 100644 (file)
@@ -1,4 +1,12 @@
 <?php
 <?php
+/**
+ * SPDX-License-Identifier: GPL-2.0-only
+ *
+ * This file is part of Nominatim. (https://nominatim.org)
+ *
+ * Copyright (C) 2022 by the Nominatim developer community.
+ * For a full list of authors see the git log.
+ */
 
 require_once(CONST_LibDir.'/init-website.php');
 require_once(CONST_LibDir.'/log.php');
 
 require_once(CONST_LibDir.'/init-website.php');
 require_once(CONST_LibDir.'/log.php');
@@ -54,7 +62,12 @@ if (!$oGeocode->getQueryString()
 
 $hLog = logStart($oDB, 'search', $oGeocode->getQueryString(), $aLangPrefOrder);
 
 
 $hLog = logStart($oDB, 'search', $oGeocode->getQueryString(), $aLangPrefOrder);
 
-$aSearchResults = $oGeocode->lookup();
+// Ignore requests from a faulty app.
+if ($oGeocode->getQueryString() === '-1,-1') {
+  $aSearchResults = array();
+} else {
+  $aSearchResults = $oGeocode->lookup();
+}
 
 logEnd($oDB, $hLog, count($aSearchResults));
 
 
 logEnd($oDB, $hLog, count($aSearchResults));
 
@@ -67,17 +80,19 @@ if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
 }
 
 if (isset($_SERVER['REQUEST_SCHEME'])
 }
 
 if (isset($_SERVER['REQUEST_SCHEME'])
-    && isset($_SERVER['SERVER_NAME'])
+    && isset($_SERVER['HTTP_HOST'])
     && isset($_SERVER['DOCUMENT_URI'])
 ) {
     $sMoreURL = $_SERVER['REQUEST_SCHEME'].'://'
     && isset($_SERVER['DOCUMENT_URI'])
 ) {
     $sMoreURL = $_SERVER['REQUEST_SCHEME'].'://'
-                .$_SERVER['SERVER_NAME'].$_SERVER['DOCUMENT_URI'].'/?'
+                .$_SERVER['HTTP_HOST'].$_SERVER['DOCUMENT_URI'].'/?'
                 .http_build_query($aMoreParams);
 } else {
                 .http_build_query($aMoreParams);
 } else {
-    $sMoreURL = '/search.php'.http_build_query($aMoreParams);
+    $sMoreURL = '/search.php?'.http_build_query($aMoreParams);
 }
 
 }
 
-if (CONST_Debug) exit;
+if (CONST_Debug) {
+    exit;
+}
 
 $sOutputTemplate = ($sOutputFormat == 'jsonv2') ? 'json' : $sOutputFormat;
 include(CONST_LibDir.'/template/search-'.$sOutputTemplate.'.php');
 
 $sOutputTemplate = ($sOutputFormat == 'jsonv2') ? 'json' : $sOutputFormat;
 include(CONST_LibDir.'/template/search-'.$sOutputTemplate.'.php');