navigation  interaction  search

 other resources

root/tags/phpbms-0.62/autofill.php

Revision 77 (checked in by mipalmer, 2 years ago)

Reorganizing for multiple projects

Line 
1 <?php
2 /*
3  +-------------------------------------------------------------------------+
4  | Copyright (c) 2005, Kreotek LLC                                         |
5  | All rights reserved.                                                    |
6  +-------------------------------------------------------------------------+
7  |                                                                         |
8  | Redistribution and use in source and binary forms, with or without      |
9  | modification, are permitted provided that the following conditions are  |
10  | met:                                                                    |
11  |                                                                         |
12  | - Redistributions of source code must retain the above copyright        |
13  |   notice, this list of conditions and the following disclaimer.         |
14  |                                                                         |
15  | - Redistributions in binary form must reproduce the above copyright     |
16  |   notice, this list of conditions and the following disclaimer in the   |
17  |   documentation and/or other materials provided with the distribution.  |
18  |                                                                         |
19  | - Neither the name of Kreotek LLC nor the names of its contributore may |
20  |   be used to endorse or promote products derived from this software     |
21  |   without specific prior written permission.                            |
22  |                                                                         |
23  | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS     |
24  | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT       |
25  | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A |
26  | PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT      |
27  | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,   |
28  | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT        |
29  | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,   |
30  | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY   |
31  | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT     |
32  | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE   |
33  | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.    |
34  |                                                                         |
35  +-------------------------------------------------------------------------+
36 */
37     require("include/session.php");
38     require("include/common_functions.php");
39
40     function getAutofillXML($what,$displayfield,$xtrafield,$tabledefid,$thefield,$whereclause){
41         global $dblink;
42         
43         $tblquerystatement="SELECT maintable FROM tabledefs WHERE id=".$tabledefid;
44         $queryresult=mysql_query($tblquerystatement,$dblink);
45         $therecord=mysql_fetch_array($queryresult);
46         
47         $querystatement="SELECT ".stripslashes($displayfield)." as display,
48                         ".stripslashes($xtrafield)." as xtra ";
49         if($thefield)
50             $querystatement.=", ".$thefield." as thefield";           
51         $querystatement.=" FROM ".$therecord["maintable"]." WHERE ";
52         if($whereclause)
53             $querystatement.=" (".stripslashes($whereclause).") AND ";
54         $querystatement.=stripslashes($displayfield)." ";
55         if($thefield)
56                 $querystatement.="=\"".$what."\"";
57         else
58                 $querystatement.="LIKE \"".$what."%\"";
59         $querystatement.="ORDER BY ".stripslashes($displayfield);
60         if($thefield)
61             $querystatement.=" LIMIT 1";           
62         else
63             $querystatement.=" LIMIT 10";           
64             
65         $queryresult=mysql_query($querystatement,$dblink);
66         if(!$queryresult){
67             echo $querystatement;
68             $numrows=0;die();}
69         else {
70             $numrows=mysql_num_rows($queryresult);
71         }
72                 
73         header('Content-Type: text/xml');
74         ?>
75 <?php echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>'; ?>
76 <response>
77 <numrec><?php echo $numrows ?></numrec>
78     <?php if($numrows){
79         while($therecord=mysql_fetch_array($queryresult)) {
80     ?><rec>
81 <fld>display</fld>
82 <val><?php echo xmlEncode($therecord["display"])?></val>
83 <fld>extra</fld>
84 <val><?php echo xmlEncode($therecord["xtra"])?></val><?php
85     if(isset($therecord["thefield"])) {
86     ?><fld>thefield</fld><val><?php echo xmlEncode($therecord["thefield"])?></val><?php
87     }
88 ?></rec><?php } //end while
89         }//end if
90     ?></response><?php
91     }//end function
92
93     if(isset($_GET["l"])){
94         $_GET=addSlashesToArray($_GET);
95         if(!isset($_GET["gf"]))$_GET["gf"]="";
96         if(!isset($_GET["wc"]))$_GET["wc"]="";
97         getAutofillXML($_GET["l"],$_GET["fl"],$_GET["xt"],$_GET["tid"],$_GET["gf"],$_GET["wc"]);
98     }
99 ?>
Note: See TracBrowser for help on using the browser.
Copyright © 2006-2007 Kreotek, LLC. All Rights reserved.