[35151] trunk/www/ports.php

jmpp at macports.org jmpp at macports.org
Tue Mar 18 09:41:35 PDT 2008


Revision: 35151
          http://trac.macosforge.org/projects/macports/changeset/35151
Author:   jmpp at macports.org
Date:     2008-03-18 09:41:34 -0700 (Tue, 18 Mar 2008)

Log Message:
-----------

As written, every query built by the search menu selection has a "WHERE 1 AND <other criteria>" in it, which is absolutely unnecessary.
Get rid of it and also rename $query variable to $criteria, to better reflect its intent as the query is being built.

Modified Paths:
--------------
    trunk/www/ports.php

Modified: trunk/www/ports.php
===================================================================
--- trunk/www/ports.php	2008-03-18 13:09:27 UTC (rev 35150)
+++ trunk/www/ports.php	2008-03-18 16:41:34 UTC (rev 35151)
@@ -80,31 +80,30 @@
 
     if ($by && ($substr || $by == "all")) {
         $fields = "name, path, version, description";
-        $query = "1";
         $tables = "$portsdb_name.portfiles p";
         if ($by == "name") {
-            $query .= " AND p.name LIKE '%" . mysql_real_escape_string($substr) . "%'";
+            $criteria = "p.name LIKE '%" . mysql_real_escape_string($substr) . "%'";
         }
         if ($by == "category") {
             $tables .= ", $portsdb_name.categories c";
-            $query .= " AND c.portfile=p.name AND c.category='" . mysql_real_escape_string($substr) . "'";
+            $criteria = "c.portfile = p.name AND c.category = '" . mysql_real_escape_string($substr) . "'";
         }
         if ($by == "maintainer") {
             $tables .= ", $portsdb_name.maintainers m";
-            $query .= " AND m.portfile=p.name AND m.maintainer LIKE '%" . mysql_real_escape_string($substr) . "%'";
+            $criteria = "m.portfile = p.name AND m.maintainer LIKE '%" . mysql_real_escape_string($substr) . "%'";
         }
         if ($by == "library") {
-            $query .= " AND p.name='" . mysql_real_escape_string($substr) . "'";
+            $criteria = "p.name = '" . mysql_real_escape_string($substr) . "'";
         }
         if ($by == "variant") {
             $tables .= ", $portsdb_name.variants v";
-            $query .= " AND v.portfile=p.name AND v.variant='" . mysql_real_escape_string($substr) . "'";
+            $criteria = "v.portfile = p.name AND v.variant = '" . mysql_real_escape_string($substr) . "'";
         }
         if ($by == "platform") {
             $tables .= ", $portsdb_name.platforms pl";
-            $query .= " AND pl.portfile=p.name AND pl.platform ='" . mysql_real_escape_string($substr) . "'";
+            $criteria = "pl.portfile = p.name AND pl.platform = '" . mysql_real_escape_string($substr) . "'";
         }
-        $query = "SELECT DISTINCT $fields FROM $tables WHERE $query ORDER BY name";
+        $query = "SELECT DISTINCT $fields FROM $tables WHERE $criteria ORDER BY name";
         $result = mysql_query($query);
         if ($result) {
 ?>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macports-changes/attachments/20080318/eafb188d/attachment-0001.html 


More information about the macports-changes mailing list