Ask a Question related to Dreamweaver AppDev, Design and Development.

  1. #1

    Default 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

  2. Similar Questions and Discussions

    1. 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: ...
    2. 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"...
    3. TileList oddities
      I have found TileList to be very problematic when resized with effects and when using hPosition/vPosition in conjunction with states. For...
    4. 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...
    5. 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...
  3. #2

    Default 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

  4. #3

    Default 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

  5. #4

    Default 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

  6. #5

    Default 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

  7. #6

    Default 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

Posting Permissions

  • You may not post new threads
  • You may post replies
  • You may not post attachments
  • You may not edit your posts

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139