Database Help
 
Forums: » Register « |  User CP |  Games |  Calendar |  Members |  FAQs |  Sitemap |  Support | 
User Name:
Password:
Remember me
Go Back   Codewalkers ForumsOther TechnologiesDatabase Help

Reply
Add This Thread To:
  Del.icio.us   Digg   Google   Spurl   Blink   Furl   Simpy   Y! MyWeb 
Thread Tools Search this Thread Rate Thread Display Modes
 
Unread Codewalkers Forums Sponsor:
Stay one step ahead of the competition. Evaluate and give feedback on some of the hottest web development tools on the market today. Make your opinion heard! Click Here
  #1  
Old May 25th, 2003, 02:20 PM
jarow jarow is offline
Codewalkers Newbie (0 - 499 posts)
 
Join Date: Apr 2007
Posts: 1 jarow User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: < 1 sec
Reputation Power: 0
phylum/order/class/family/genus

1. How should my query be written to do the following. I have a form that posts to the page with the query...the form has five fields

Phylum
Clase
Orden
Familia
Genero

What I want is that if the user only fills in the phylum field, only the phylum result will be shown. If the user fills in the phylum and class field, again, only those two results are shown. However if the user fills in let's say the genero field than that field and all the fields above it are shown. In other words, I need the query to display the chosen field and all those above it even if the fields above the chose field have not been filled in. Am I explaining that clearly?


php Code:
Original - php Code
  1.  
  2. <?php require_once('../Connections/connfauna.php'); ?>
  3. <?php
  4. mysql_select_db($database_connfauna, $connfauna);
  5. $query_rsadd = "SELECT * FROM fauna";
  6. if(isset($_GET['phylum'])){   
  7.     $varphylum = $_GET['phylum'];
  8.     $query_rsadd .=" WHERE phylum LIKE '%$varphylum%'";
  9. if(isset($_GET['clase'])){
  10.       $varclass = $_GET['clase'];
  11.       $query_rsadd .=" AND clase LIKE '%$varclase%'";
  12. if(isset($_GET['orden'])){
  13.         $varord = $_GET['orden'];
  14.         $query_rsadd .=" AND orden LIKE '%$varord%'";
  15. if(isset($_GET['familia'])){
  16.           $varfam = $_GET['familia'];
  17.           $query_rsadd .=" AND familia LIKE '%$varfam%'";
  18. if(isset($_GET['genero'])){
  19.             $vargen = $_GET['genero'];
  20.             $query_rsadd .=" AND genero LIKE '%$vargen%'";   
  21.           }   
  22.         }       
  23.       }   
  24.     }
  25. }
  26. $rsadd = mysql_query($query_rsadd, $connfauna) or die(mysql_error());
  27. $row_rsadd = mysql_fetch_assoc($rsadd);
  28. $totalRows_rsadd = mysql_num_rows($rsadd);
  29.  
  30. ?>
  31. <html>
  32. <head>
  33. <title>Untitled Document</title>
  34. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  35. </head>
  36.  
  37. <body>
  38. <p><?php echo $row_rsadd['phylum']; ?> </p>
  39. <p><?php echo $row_rsadd['clase']; ?></p>
  40. <p> <?php echo $row_rsadd['orden']; ?> </p>
  41. <p><?php echo $row_rsadd['familia']; ?> </p>
  42. <p><?php echo $row_rsadd['genero']; ?> </p>
  43. <p><?php echo $row_rsadd['especie']; ?> </p>
  44. </body>
  45. </html>


Any ideas would be greatly appreciated

Reply With Quote
  #2  
Old May 25th, 2003, 06:34 PM
opus006 opus006 is offline
Codewalkers Newbie (0 - 499 posts)
 
Join Date: Apr 2007
Posts: 65 opus006 User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: < 1 sec
Reputation Power: 2
RE: phylum/order/class/family/genus

try something like:
php Code:
Original - php Code
  1.  
  2. $last = array();
  3. $i =0;
  4. if(isset($_GET['phylum'])){   
  5.     $phylum = $_GET['phylum'];
  6.     $last[$i++] = 'phylum';
  7.     }
  8. if(isset($_GET['clase'])){
  9.     $clase = $_GET['clase'];
  10.     $last[$i++] = 'clase';
  11.     }
  12. if(isset($_GET['orden'])){
  13.     $orden = $_GET['orden'];
  14.     $last[$i++] = 'orden';
  15.     }
  16. if(isset($_GET['familia'])){
  17.     $familia = $_GET['familia'];
  18.     $last[$i++] = 'familia';
  19.     }
  20. if(isset($_GET['genero'])){
  21.     $genero = $_GET['genero'];
  22.     $last[$i++] = 'genero';
  23.     }
  24. if (!$i) {      // make sure something entered
  25.   $qry = "WHERE ";
  26.   $sel = "SELECT "
  27.   for( $n=0; $n<($i-1); $n++) {
  28.     $qry .= "$last[$n] LIKE '%${$last[$n]}%' AND ";
  29.     $sel .= "$last[$n], ";
  30.   $qry .= "$last[$n] LIKE '%${$last[$n]}%'";
  31.   $sel .= "$last[$n] ";
  32.   $query_rsadd = $sel."FROM fauna ".$qry;
  33.   }

Reply With Quote
Reply

Viewing: Codewalkers ForumsOther TechnologiesDatabase Help > phylum/order/class/family/genus


Thread Tools  Search this Thread 
Search this Thread:

Advanced Search
Display Modes  Rate This Thread 
Rate This Thread:


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
View Your Warnings | New Posts | Latest News | Latest Threads | Shoutbox
Forum Jump


Forums: » Register « |  User CP |  Games |  Calendar |  Members |  FAQs |  Sitemap |  Support | 
  
 





© 2003-2008 by Developer Shed. All rights reserved. DS Cluster 2 hosted by Hostway