Ask a Question related to Dreamweaver AppDev, Design and Development.
-
bolin #1
Search oddities
I had a working search page, results page, Access DB. Two columns in in the
DB, an identifier and a paragraph. The search worked finding and displaying
624 records when retrieving all, and the correct number when filtered to search
on the identifier. I then started a duplicate set of pages. I added another
search to the set on the other field (paragraph). Now it returns all of the
records every time for the first field search and one (the last record) for the
second field search. I have checked and checked rights. I have even given
full access vs. read/write to the internet account and to Everyone. The first
search (returning all) is currently set for "begins with" though it has been
contains. The second (returning one record) is set to "contains." I have
compared the code line by line and only see the page names for differences -
currently SearchN.asp with ResultsN.asp and SearchC.asp with ResultsC.asp. I
tried redoing things in VB Script. I did only the "SearchN" search. Same
result. Returns everything. Any suggestions on what I might look for?
bolin Guest
-
labelFunction oddities in simple DataGrid application
Fumbling around with a simple dataGrid application I have run into some strange behavior. Rather than using the more verbose array form: ... -
Dapper Drake/Kubuntu oddities
Just upgraded to Dapper. Actually I did clean install of it. 1. Fast User switching either be missing or gone. 2. Kontact no longer has a "News"... -
TileList oddities
I have found TileList to be very problematic when resized with effects and when using hPosition/vPosition in conjunction with states. For... -
Sendmail 8.13.1 oddities
Here's one for the sendmail gurus: I have a FreeBSD 4.11-STABLE #0 box with sendmail 8.13.1 built from source. I've hacked on the host.mc file a... -
MPEG1 Windows palette oddities...
Hi there Currently developing a CD-ROM under Dir-MX using MPEG1 video played back via MPEG Advance Xtra. Everything is fine and dandy, well up... -
nisav19 #2
Re: Search oddities
a few things...
1) posting your code would be very helpful
2) what if you run a test query in Dreamweaver..does the same thing happen or
does it work properly. If it works properly then its the problem with your asp
code..if it doesnt then its a problem with your queries.
3) if the first time you search it returns everyting and the second time only
the last record...then you might not be closing your recordset at the
end...which causes the location to stay at the last record...check the end of
your asp/html and make sure the recordset is being closed.
4) If it is being closed and issue still happens you can try inserting
recordsetname.MoveFirst before you actually go through displaying the
records..which will cause the location in the data to go to the first item and
start from the beginning.
post back and let us know what you find
nisav19 Guest
-
bolin #3
Re: Search oddities
Thanks for the reply.
I would post the code, but that would be almost everything since I am not sure
where to focus. The code is all generated by Dreamweaver. I have not added to
it. I did change and change back from DSN to DSN-less access. It made no
difference.
Yes, it works in test mode. I can search for "126.3b" which is part of 33
items in the 624. It returns - in test mode - the 33. Changing to "1" and all
624 are found. Another sample search returns 64 records as it should - in test
mode.
It's not the order that affects what is returned. I can restart the computer,
call up the search page in localhost, and search for the second field content,
and it will always return that same last record. Likewise, no matter how many
times I run the first field as filter, I get all 624 records each time.
I'll check for the "close" in the code.
Thanks again for the post.
bolin Guest
-
bolin #4
Re: Search oddities
The code from the search page.
<form action="ResultsN.asp" method="get" name="SearchN" id="SearchN">
<table width="500" border="1" cellspacing="2" cellpadding="2">
<tr>
<td><div align="center">
<h3>Search by TEKS Number </h3>
</div></td>
</tr>
<tr>
<td><div align="center">
<h4>Enter the TEKS number <span class="style1">(from list)</span>
<input name="number" type="text" id="number">
</h4>
</div></td>
</tr>
<tr>
<td><div align="center">
<input name="Submit1" type="submit" id="Submit1" value="Search by
Number">
</div></td>
</tr>
<tr>
<td><div align="center">
<hr>
</div></td>
</tr>
</table>
</form>
bolin Guest
-
bolin #5
Re: Search oddities
I thought I posted the results page code as well. I'll wait before posting again to be sure it doesn't show up - trying to avoid a double post.
bolin Guest
-
bolin #6
Re: Search oddities
There is a close. line 334.
<%@LANGUAGE="JAVASCRIPT" CODEPAGE="1252"%>
<!--#include file="../Connections/conTEKS.asp" -->
<%
var rsResultsN__MMColParam = "1";
if (String(Request.QueryString("Field1")) != "undefined" &&
String(Request.QueryString("Field1")) != "") {
rsResultsN__MMColParam = String(Request.QueryString("Field1"));
}
%>
<%
var rsResultsN = Server.CreateObject("ADODB.Recordset");
rsResultsN.ActiveConnection = MM_conTEKS_STRING;
rsResultsN.Source = "SELECT * FROM tblTEKS WHERE Field1 LIKE '"+
rsResultsN__MMColParam.replace(/'/g, "''") + "%'";
rsResultsN.CursorType = 0;
rsResultsN.CursorLocation = 2;
rsResultsN.LockType = 1;
rsResultsN.Open();
var rsResultsN_numRows = 0;
%>
<%
var Repeat1__numRows = 10;
var Repeat1__index = 0;
rsResultsN_numRows += Repeat1__numRows;
%>
<%
// *** Recordset Stats, Move To Record, and Go To Record: declare stats
variables
// set the record count
var rsResultsN_total = rsResultsN.RecordCount;
// set the number of rows displayed on this page
if (rsResultsN_numRows < 0) { // if repeat region set to all records
rsResultsN_numRows = rsResultsN_total;
} else if (rsResultsN_numRows == 0) { // if no repeat regions
rsResultsN_numRows = 1;
}
// set the first and last displayed record
var rsResultsN_first = 1;
var rsResultsN_last = rsResultsN_first + rsResultsN_numRows - 1;
// if we have the correct record count, check the other stats
if (rsResultsN_total != -1) {
rsResultsN_numRows = Math.min(rsResultsN_numRows, rsResultsN_total);
rsResultsN_first = Math.min(rsResultsN_first, rsResultsN_total);
rsResultsN_last = Math.min(rsResultsN_last, rsResultsN_total);
}
%>
<%
// *** Recordset Stats: if we don't know the record count, manually count them
if (rsResultsN_total == -1) {
// count the total records by iterating through the recordset
for (rsResultsN_total=0; !rsResultsN.EOF; rsResultsN.MoveNext()) {
rsResultsN_total++;
}
// reset the cursor to the beginning
if (rsResultsN.CursorType > 0) {
if (!rsResultsN.BOF) rsResultsN.MoveFirst();
} else {
rsResultsN.Requery();
}
// set the number of rows displayed on this page
if (rsResultsN_numRows < 0 || rsResultsN_numRows > rsResultsN_total) {
rsResultsN_numRows = rsResultsN_total;
}
// set the first and last displayed record
rsResultsN_last = Math.min(rsResultsN_first + rsResultsN_numRows - 1,
rsResultsN_total);
rsResultsN_first = Math.min(rsResultsN_first, rsResultsN_total);
}
%>
<% var MM_paramName = ""; %>
<%
// *** Move To Record and Go To Record: declare variables
var MM_rs = rsResultsN;
var MM_rsCount = rsResultsN_total;
var MM_size = rsResultsN_numRows;
var MM_uniqueCol = "";
MM_paramName = "";
var MM_offset = 0;
var MM_atTotal = false;
var MM_paramIsDefined = (MM_paramName != "" && String(Request(MM_paramName))
!= "undefined");
%>
<%
// *** Move To Record: handle 'index' or 'offset' parameter
if (!MM_paramIsDefined && MM_rsCount != 0) {
// use index parameter if defined, otherwise use offset parameter
r = String(Request("index"));
if (r == "undefined") r = String(Request("offset"));
if (r && r != "undefined") MM_offset = parseInt(r);
// if we have a record count, check if we are past the end of the recordset
if (MM_rsCount != -1) {
if (MM_offset >= MM_rsCount || MM_offset == -1) { // past end or move last
if ((MM_rsCount % MM_size) != 0) { // last page not a full repeat region
MM_offset = MM_rsCount - (MM_rsCount % MM_size);
} else {
MM_offset = MM_rsCount - MM_size;
}
}
}
// move the cursor to the selected record
for (var i=0; !MM_rs.EOF && (i < MM_offset || MM_offset == -1); i++) {
MM_rs.MoveNext();
}
if (MM_rs.EOF) MM_offset = i; // set MM_offset to the last possible record
}
%>
<%
// *** Move To Record: if we dont know the record count, check the display
range
if (MM_rsCount == -1) {
// walk to the end of the display range for this page
for (var i=MM_offset; !MM_rs.EOF && (MM_size < 0 || i < MM_offset +
MM_size); i++) {
MM_rs.MoveNext();
}
// if we walked off the end of the recordset, set MM_rsCount and MM_size
if (MM_rs.EOF) {
MM_rsCount = i;
if (MM_size < 0 || MM_size > MM_rsCount) MM_size = MM_rsCount;
}
// if we walked off the end, set the offset based on page size
if (MM_rs.EOF && !MM_paramIsDefined) {
if ((MM_rsCount % MM_size) != 0) { // last page not a full repeat region
MM_offset = MM_rsCount - (MM_rsCount % MM_size);
} else {
MM_offset = MM_rsCount - MM_size;
}
}
// reset the cursor to the beginning
if (MM_rs.CursorType > 0) {
if (!MM_rs.BOF) MM_rs.MoveFirst();
} else {
MM_rs.Requery();
}
// move the cursor to the selected record
for (var i=0; !MM_rs.EOF && i < MM_offset; i++) {
MM_rs.MoveNext();
}
}
%>
<%
// *** Move To Record: update recordset stats
// set the first and last displayed record
rsResultsN_first = MM_offset + 1;
rsResultsN_last = MM_offset + MM_size;
if (MM_rsCount != -1) {
rsResultsN_first = Math.min(rsResultsN_first, MM_rsCount);
rsResultsN_last = Math.min(rsResultsN_last, MM_rsCount);
}
// set the boolean used by hide region to check if we are on the last record
MM_atTotal = (MM_rsCount != -1 && MM_offset + MM_size >= MM_rsCount);
%>
<%
// *** Go To Record and Move To Record: create strings for maintaining URL and
Form parameters
// create the list of parameters which should not be maintained
var MM_removeList = "&index=";
if (MM_paramName != "") MM_removeList += "&" + MM_paramName.toLowerCase() +
"=";
var MM_keepURL="",MM_keepForm="",MM_keepBoth="",MM_kee pNone="";
// add the URL parameters to the MM_keepURL string
for (var items=new Enumerator(Request.QueryString); !items.atEnd();
items.moveNext()) {
var nextItem = "&" + items.item().toLowerCase() + "=";
if (MM_removeList.indexOf(nextItem) == -1) {
MM_keepURL += "&" + items.item() + "=" +
Server.URLencode(Request.QueryString(items.item()) );
}
}
// add the Form variables to the MM_keepForm string
for (var items=new Enumerator(Request.Form); !items.atEnd(); items.moveNext())
{
var nextItem = "&" + items.item().toLowerCase() + "=";
if (MM_removeList.indexOf(nextItem) == -1) {
MM_keepForm += "&" + items.item() + "=" +
Server.URLencode(Request.Form(items.item()));
}
}
// create the Form + URL string and remove the intial '&' from each of the
strings
MM_keepBoth = MM_keepURL + MM_keepForm;
if (MM_keepBoth.length > 0) MM_keepBoth = MM_keepBoth.substring(1);
if (MM_keepURL.length > 0) MM_keepURL = MM_keepURL.substring(1);
if (MM_keepForm.length > 0) MM_keepForm = MM_keepForm.substring(1);
%>
<%
// *** Move To Record: set the strings for the first, last, next, and previous
links
var MM_moveFirst="",MM_moveLast="",MM_moveNext="",MM_m ovePrev="";
var MM_keepMove = MM_keepBoth; // keep both Form and URL parameters for moves
var MM_moveParam = "index";
// if the page has a repeated region, remove 'offset' from the maintained
parameters
if (MM_size > 1) {
MM_moveParam = "offset";
if (MM_keepMove.length > 0) {
params = MM_keepMove.split("&");
MM_keepMove = "";
for (var i=0; i < params.length; i++) {
var nextItem = params.substring(0,params.indexOf("="));
if (nextItem.toLowerCase() != MM_moveParam) {
MM_keepMove += "&" + params;
}
}
if (MM_keepMove.length > 0) MM_keepMove = MM_keepMove.substring(1);
}
}
// set the strings for the move to links
if (MM_keepMove.length > 0) MM_keepMove = Server.HTMLEncode(MM_keepMove) + "&";
var urlStr = Request.ServerVariables("URL") + "?" + MM_keepMove + MM_moveParam
+ "=";
MM_moveFirst = urlStr + "0";
MM_moveLast = urlStr + "-1";
MM_moveNext = urlStr + (MM_offset + MM_size);
MM_movePrev = urlStr + Math.max(MM_offset - MM_size,0);
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Results - TEKS Search by Number</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
body,td,th {
font-family: Verdana, Arial, Helvetica, sans-serif;
color: #663300;
}
body {
background-color: #CC9966;
}
a:link {
color: #663300;
}
a:visited {
color: #663300;
}
a:hover {
color: #CC6600;
}
a:active {
color: #663300;
}
.style1 {font-size: x-small}
.style2 { font-size: xx-small;
color: #000000;
font-weight: bold;
}
-->
</style></head>
<body>
<div align="center">
<h2>TEKS Search</h2>
<table width="500" border="1" cellspacing="2" cellpadding="2">
<tr>
<td colspan="2"><div align="center">
<h3>Results of TEKS Search by Number </h3>
</div></td>
</tr>
<tr>
<td colspan="2"><div align="center"><a
href="AdminControl.asp">Home</a></div></td>
</tr>
<% if (!rsResultsN.EOF || !rsResultsN.BOF) { %>
<tr>
<td colspan="2"><div align="center">
<h4>Showing results <%=(rsResultsN_first)%> to
<%=(rsResultsN_last)%> of <%=(rsResultsN_total)%></h4>
</div></td>
</tr>
<tr>
<td colspan="2"><table border="0" width="50%" align="center">
<tr>
<td width="23%" align="center"><% if (MM_offset != 0) { %>
<a href="<%=MM_moveFirst%>"><img src="First.gif" border=0></a>
<% } // end MM_offset != 0 %>
</td>
<td width="31%" align="center"><% if (MM_offset != 0) { %>
<a href="<%=MM_movePrev%>"><img src="Previous.gif"
border=0></a>
<% } // end MM_offset != 0 %>
</td>
<td width="23%" align="center"><% if (!MM_atTotal) { %>
<a href="<%=MM_moveNext%>"><img src="Next.gif" border=0></
bolin Guest



Reply With Quote

