Search Classic and Contemporary Poetry

"; $query="SELECT DISTINCT ssub FROM mastersub"; $query.= " WHERE msub = '$msub'"; $query.= " ORDER BY ssub"; # echo "$query"; # die; // $result=mysqli_query($mycon,$query); $result=mysqli_query($mycon,$query); $num=mysqli_num_rows($result); # echo "
Secondary Subjects

"; echo "Back to search

"; echo "Searching...
"; $utmpm = urlencode($msub); if ( $msub ) echo "Category: $msub
"; echo "Matches Found: $num
"; echo "
"; if ( $num == 0 ) { echo "No Results Found.
"; } for($i = 0; $i < mysqli_num_rows( $result ); $i++) { $tmp = mysqli_fetch_row( $result ); $utmps = urlencode($tmp[0]); $utmpm = urlencode($msub); // $sub = ucwords(strtolower($tmp[0])); $sub = my_ttlcase($tmp[0]); $sub = preg_replace('/\bAnd\b/', '&', $sub); print("$sub
\r\n"); } mysql_close($mycon); } //end of msubit function; function ssubit( $mycon, $msub, $ssub ){ # echo "This is the master sub: $msub
"; # echo "This is the secondary sub: $ssub
"; $query="SELECT DISTINCT M.subject FROM mastersub M"; $query.= " INNER JOIN subject S ON M.subject = S.subject"; $query.= " INNER JOIN poem P on S.poem_id = P.id"; $query.= " WHERE M.msub = '$msub'"; $query.= " AND M.ssub = '$ssub'"; $query.= " AND P.text_link IS NOT NULL"; $query.= " ORDER BY subject"; # echo "$query"; # die; $result=mysqli_query($mycon,$query); $num=mysqli_num_rows($result); # echo "
Subjects

"; echo "Back to search

"; echo "Searching...
"; $utmpm = urlencode($msub); $utmps = urlencode($ssub); if ( $msub ) echo "Category: $msub / $ssub
"; echo "Matches Found: $num
"; echo "
"; if ( $num == 0 ) { echo "No Results Found.
"; } for($i = 0; $i < mysqli_num_rows( $result ); $i++) { $tmp = mysqli_fetch_row( $result ); $utmp = urlencode($tmp[0]); $utmps = urlencode($ssub); $utmpm = urlencode($msub); // $sub = ucwords(strtolower($tmp[0])); $sub = my_ttlcase($tmp[0]); $sub = preg_replace('/\bAnd\b/', '&', $sub); // print("$sub
\r\n"); print("$sub
\r\n"); } mysqli_close($mycon); } //end of ssubit function; function subit( $mycon, $msub, $ssub, $sub ){ // *********************** // not used as of 20130319 // *********************** echo "This is the master sub: $msub
"; echo "This is the secondary sub: $ssub
"; echo "This is the tertiary sub: $sub
"; return; $query="SELECT DISTINCT subject FROM mastersub"; $query.= " WHERE msub = '$msub'"; $query.= " AND ssub = '$ssub'"; $query.= " ORDER BY subject"; echo "$query"; # die; $result=mysqli_query($mycon, $query); $num=mysqli_num_rows($result); # echo "
Subjects

"; echo "Back to search

"; echo "Searching...
"; if ( $msub ) echo "Category: $msub / $ssub
"; echo "Matches Found: $num
"; echo "
"; if ( $num == 0 ) { echo "No Results Found.
"; } for($i = 0; $i < mysqli_num_rows( $result ); $i++) { $tmp = mysqli_fetch_row( $result ); $utmp = urlencode($tmp[0]); // $sub = ucwords(strtolower($tmp[0])); $sub = my_ttlcase($tmp[0]); $sub = preg_replace('/\bAnd\b/', '&', $sub); print("$sub
\r\n"); } mysqli_close($mycon); } //end of subit function; function xsubit( $mycon ){ // *********************** // not used as of 20130319 // *********************** $query="SELECT DISTINCT P.*, CONCAT(P.author, ' ', P.title, ' ', P.first_line, P.last_line, ' ', P.variant) AS kword FROM poem P LEFT JOIN subject S ON S.poem_id = P.id LEFT JOIN mastersub M ON M.subject = S.subject WHERE M.msub = '$msub' AND (P.text_link IS NOT NULL"; $query.= ") "; $condition= ""; $authonly = False; $query.= "$condition"; if ($authonly) { $query.= " ORDER BY P.author, P.title"; } else { $query.= " ORDER BY P.title, P.author"; } # echo "$query"; # die; $result=mysqli_query($mycon,$query); $num=mysqli_num_rows($result); echo "
Search Results

"; echo "Back to search

"; echo "Searching...
"; if ( $msub ) echo "Category: $msub
"; echo "Matches Found: $num
"; echo "
"; if ( $num == 0 ) { echo "No Results Found.
"; } if ($authonly) { myAuthSearch( $num, $result ); } else { myAllSearch( $num, $result, $mycon ); } mysqli_close($mycon); } //end of subit function; function myAllSearch( $num, $result, $mycon ){ $i=0; while ($i < $num) { $pid=mysqli_result($result,$i,"id"); $txt_query="SELECT T.* FROM text T WHERE T.poem_id = $pid"; // echo "$query
"; $txt_result=mysqli_query($mycon,$query); $txt_num=mysqli_num_rows($txt_result); // echo "$txt_num
"; // die; $author=mysqli_result($result,$i,"author"); $author_aka=mysqli_result($result,$i,"author_aka"); $author_aka=substr($author_aka, 0, -1); $bio_link=mysqli_result($result,$i,"bio_link"); $title=mysqli_result($result,$i,"title"); $first_line=mysqli_result($result,$i,"first_line"); $last_line=mysqli_result($result,$i,"last_line"); $text_link=mysqli_result($result,$i,"text_link"); $recitation_link=mysqli_result($result,$i,"recitation_link"); $rec_by_auth=mysqli_result($result,$i,"rec_by_auth"); $subjects=trim(mysqli_result($result,$i,"subjects")); $subjects=substr($subjects, 0, -1); $variants=trim(mysqli_result($result,$i,"variant")); $variants=substr($variants, 0, -1); $revauthARR = explode(", ", $author); $tmp = array_reverse($revauthARR); $revauth = implode(" ", $tmp); $tmpAKA = explode(";", $author_aka); $author_aka = implode("; ", $tmpAKA); $revauth = case_revauth($revauth); $title = case_title($title); $author = case_author($author); $author_aka = case_authoraka($author_aka); $first_line = case_firstline($first_line); $last_line = case_firstline($last_line); $subjects = case_subject($subjects); $variants = case_variant($variants); /* if ( $subjects === "" ) { unset($subjects) ; } */ /* original 2012OCT17 $author   " . ( ($bio_link) ? "\t\tPoet's Biography" : "" ) . "
$title   " . ( ($text_link) ? "\t\tPoem Text" : "" ) . "    " . ( ($recitation_link) ? "\t\t" . ( ( $rec_by_auth ) ? "Recitation by Author" : "Recitation" ) . "" : "" ) . "
*/ unset($text_src); $text_win="_blank"; if ( $txt_num > 0 ){ if ( $text_link ) { $text_src=$text_link; } $text_link="../poem.php?id=$pid"; $text_win="_self"; if ( $text_link == $text_src ) { unset($text_src); } } /* echo "$txt_num
Text: $text_link
Src: $text_src
"; */ echo " ${title}, by $revauth   " . ( ($text_link) ? "\t\tPoem Text" : "" ) . "    " . ( ($text_src) ? "\t\tPoem Source" : "" ) . "    " . ( ($recitation_link) ? "\t\t" . ( ( $rec_by_auth ) ? "Recitation by Author" : "Recitation" ) . "" : "" ) . "    " .( ($bio_link) ? "\t\tPoet's Biography" : "" ) . "
"; if ( $first_line ) { echo " First Line: $first_line
"; } if ( $last_line ) { echo " Last Line: $last_line
"; } if ( $author_aka ) { echo " Alternate Author Name(s): $author_aka
"; } if ( $variants ) { echo " Variant Title(s): $variants
"; } if ( $subjects ) { echo " Subject(s): $subjects
"; } echo "

"; $i++; } } //end of function function myAuthSearch( $num, $result ){ global $hostname, $username, $password, $database; $con = @mysqli_connect($hostname,$username,$password,$database); // mysql_connect($hostname,$username,$password); // @mysql_select_db($database) or die( "Unable to select database"); $i=0; $last_author=""; while ($i < $num) { $author=mysqli_result($result,$i,"author"); $bio_link=mysqli_result($result,$i,"bio_link"); $title=mysqli_result($result,$i,"title"); $first_line=mysqli_result($result,$i,"first_line"); $last_line=mysqli_result($result,$i,"last_line"); $text_link=mysqli_result($result,$i,"text_link"); $recitation_link=mysqli_result($result,$i,"recitation_link"); $rec_by_auth=mysqli_result($result,$i,"rec_by_auth"); $subjects=trim(mysqli_result($result,$i,"subjects")); $subjects=substr($subjects, 0, -1); $revauth = case_revauth($revauth); $title = case_title($title); $author = case_author($author); $author_aka = case_authoraka($author_aka); $first_line = case_firstline($first_line); $last_line = case_firstline($last_line); $subjects = case_subject($subjects); $variants = case_variant($variants); if ($author != $last_author) { $query="SELECT COUNT(title) as numpoems FROM poem WHERE (text_link IS NOT NULL OR recitation_link IS NOT NULL) AND author = '$author'"; $cresult=mysqli_query($mycon,$query); if (!$cresult) echo mysqli_error(); $numpoems_cnt=mysqli_fetch_array($cresult); $numpoems=$numpoems_cnt['numpoems']; /* echo "$query"; */ echo "
$author   " . ( ($bio_link) ? "\t\tPoet's Biography" : "" ) . "
$numpoems poems available by this author


"; $last_author = $author; } echo " $title   " . ( ($text_link) ? "\t\tPoem Text" : "" ) . "    " . ( ($recitation_link) ? "\t\t" . ( ( $rec_by_auth ) ? "Recitation by Author" : "Recitation" ) . "" : "" ) . "
"; if ( $first_line ) { echo " First Line: $first_line
"; } if ( $last_line ) { echo " Last Line: $last_line
"; } if ( $subjects ) { echo " Subjects: $subjects
"; } echo "

"; $i++; } } //end of function function search_transform_term($term){ $term = preg_replace("/(\s)/e", "'{WHITESPACE-'.ord('\$1').'}'", $term); $term = preg_replace("/,/", "{COMMA}", $term); return $term; } function search_split_terms($terms){ /* $terms = preg_replace('!\s+!', ' ', $terms);*/ $terms = str_replace(",", "",$terms); $terms = preg_replace("/\"(.*?)\"/e", "search_transform_term('\$1')", $terms); $terms = preg_split("/\s+|,/", $terms); $out = array(); foreach($terms as $term){ $term = preg_replace("/\{WHITESPACE-([0-9]+)\}/e", "chr(\$1)", $term); $term = preg_replace("/\{COMMA\}/", ",", $term); $out[] = $term; } return $out; } function search_escape_rlike($string){ return preg_replace("/([.\[\]*^\$])/", '\\\$1', $string); } function search_db_escape_terms($terms){ $out = array(); foreach($terms as $term){ $out[] = '[[:<:]]'.AddSlashes(search_escape_rlike($term)).'[[:>:]]'; } return $out; } ?>