[Geomoose-users] Need help with ELSE / OR statements
Jim Dahl
jim.dahl at mail.co.douglas.mn.us
Fri Aug 20 14:40:22 EDT 2010
Thanks Dan!, with a few more adjustments, the biggest changing the
implode from OR to AND, it appears to be working. Thanks very much.
jim
-----Original Message-----
From: Dan Little [mailto:danlittle at yahoo.com]
Sent: Thursday, August 19, 2010 5:54 PM
To: Jim Dahl; geomoose-users at lists.sourceforge.net
Subject: Re: [Geomoose-users] Need help with ELSE / OR
statements
Is this the old version of the script? It looks like it does not
include the code suggestion I made.
From: Jim Dahl <jim.dahl at mail.co.douglas.mn.us>
To: Dan Little <danlittle at yahoo.com>;
geomoose-users at lists.sourceforge.net
Sent: Thu, August 19, 2010 3:02:23 PM
Subject: RE: [Geomoose-users] Need help with ELSE / OR
statements
Dan, it must be getting close. I had to take out a
curly bracket } and a dollar sign $ to make it not error out but search
came back empty. I will include more script if that helps.
<?php
$field=(isset($_REQUEST['field']))?$_REQUEST['field']:"none";
$field2=(isset($_REQUEST['field2']))?$_REQUEST['field2']:"none";
$sort=(isset($_REQUEST['sort']))?$_REQUEST['sort']:"Surveyor_Image_Link.
TRS";
//$sort2=(isset($_REQUEST['sort2']))?$_REQUEST['sort2']:"Surveyor_Image_
Link.DOCTYPE";
$searchval=(isset($_REQUEST['searchval']))?$_REQUEST['searchval']:"none"
;
$searchval2=(isset($_REQUEST['searchval2']))?$_REQUEST['searchval2']:"no
ne";
if ($field <> "none") {
// Microsoft Access connection string.
// Douglas server
//$db =
'\\ms4w\\apps\\GeoMOOSE\\douglas\\maps_douglas\\database\\parcels.mdb';
// HEI server
$db =
'\\ms4w\\apps\\GeoMOOSE\\douglas\\maps_douglas\\database\\aex.mdb';
$conn = new COM('ADODB.Connection'); // or
exit('Cannot start ADO.');
// Two ways to connect. Choose one.
$conn->Open("Provider=Microsoft.Jet.OLEDB.4.0; Data
Source=$db"); // or exit('Cannot open with Jet.');
//$conn->Open("DRIVER={Microsoft Access Driver
(*.mdb)}; DBQ=$db"); // or exit('Cannot open with driver.');
// SQL statement to build recordset.
if ($field == "TRS" || $field2 == "DOCTYPE") {
$rs = $conn->Execute("SELECT * FROM
Surveyor_Image_Link WHERE TRS LIKE '%".$searchval."%' ORDER BY ".$sort."
ASC");
// ||
// ) elseif ($field2 == "DOCTYPE") {
// $rs = $conn->Execute("SELECT * FROM
Surveyor_Image_Link WHERE DOCTYPE LIKE '".$searchval2."%' ORDER BY
".$sort." ASC");
} else {
echo "You have reached this page by mistake.";
}
}
?>
-----Original Message-----
From: Dan Little [mailto:danlittle at yahoo.com]
Sent: Thursday, August 19, 2010 1:05 PM
To: Jim Dahl;
geomoose-users at lists.sourceforge.net
Subject: Re: [Geomoose-users] Need help with
ELSE / OR statements
Good news, GM2.2 can do this! :) Bad news...
GM1.6 is harder and you need to use manual SQL.
$clauses = array();
if($field == "TRS") {
array_push($clauses, "TRS like
'%".$searchval$."%'");
}
if($field2 == "DOCTYPE") {
array_push($clauses, "DOCTYPE LIKE
'".$searchval2."%'");
}
$all_clauses = implode(" or ", $clauses);
$rs = $conn->Execute("SELECT * FROM
Surveyor_Image_Link WHERE ".$all_clauses." ORDER BY ".$sort." ASC");
From: Jim Dahl
<jim.dahl at mail.co.douglas.mn.us>
To: geomoose-users at lists.sourceforge.net
Sent: Thu, August 19, 2010 9:56:08 AM
Subject: [Geomoose-users] Need help with
ELSE / OR statements
I am trying to add two search fields in
my GM app. I can make each field search correctly by themselves but not
together. I have the code where the first two lines work and when I
comment out the first two and enable the second two lines, the code
works for searchval2. What I want to know is how can I use ELSE with or
without the OR statements to allow me to enable both fields for the
search?
if ($field == "TRS") {
$rs = $conn->Execute("SELECT * FROM
Surveyor_Image_Link WHERE TRS LIKE '%".$searchval."%' ORDER BY ".$sort."
ASC");
// ) if ($field2 == "DOCTYPE") {
// $rs = $conn->Execute("SELECT *
FROM Surveyor_Image_Link WHERE DOCTYPE LIKE '".$searchval2."%' ORDER BY
".$sort." ASC");
} else {
echo "You have reached this page by
mistake.";
}
Jim Dahl, GISP
GIS Coordinator
Douglas County Public Works
526 Willow Dr
PO Box 398
Alexandria MN 56308
V 320-762-2933
320-762-2999
F 320-762-2998
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/geomoose-users/attachments/20100820/d12e27f8/attachment.html
More information about the Geomoose-users
mailing list