Dan Becker's Games Site
Game Home Articles Quick Views Reviews Play Data Photos Local Games Links

Quick Views

Following are brief descriptions of games that I've played recently. I have enough plays to give some initial thoughts and information but haven't played the game enough to form a lasting impression. Because of their brevity, I hope to publish many more of these previews and publish them more frequently.

Additionally, I found that I tend to write reviews on games I play a lot, and I tend to play the games that I like a lot. Hence, my reviews tend to be positive because I write them about games that I play and like a lot. Here the game selection is a bit more balanced between good and bad, and I can write more about games that bored me or just did not grab me, or I can rave about games that struck me. Unlike the Reviews page, these quick views tend not to have strategy discussions or the extensive list of online rules and reviews.

Click on the folder icon or game title to expose or hide the review text. Following the review, click on the Board Game Geek or Funagain Games symbols for more information at those sites. I hope you enjoy these quick glimpses of some fun games.

0 ) { // echo "

IPAddr=$ipAddr, gameid=$gameid already exists in $tableName.
\n"; // DEBUG // showResults( $existing ); // DEBUG return; } // echo "

Inserting gameid \"$gameid\" into \"$tableName\".
\n"; // DEBUG $today = getdate( time() ); $todayStr = date( "Y/m/d H:i:s" ); $sql = "INSERT INTO $tableName ( ipaddr, opendate, gameid ) VALUES ( '$ipAddr', '$todayStr', '$gameid' )"; $results = sqlQuery( $sql, false ); } } // openSection // Given a tableName and a gameid, removes the given gameid from the table. // Also closes all if the $gameid is "*". function closeSection( $tableName, $ipAddr, $gameid ) { if ( tableExists( $tableName ) ) { if ( 0 == strcmp( $gameid, "*" ) ) { $sql = "DELETE FROM $tableName WHERE ( ipaddr = \"$ipAddr\" )"; } else { $sql = "DELETE FROM $tableName WHERE (( gameid = $gameid ) && ( ipaddr = \"$ipAddr\" ))"; } $sqlResults = sqlQuery( $sql, false ); } } // closeSection // Given an sql result, display the game review. // The open/close arrays are passed by reference and may be modified. function displayReview( $row, &$anchoredSections, &$openSections, &$alreadyOpened ) { GLOBAL $PHP_SELF; $reviewDate = $row[ "Date" ]; $gameID = $row[ "gameid" ]; $gameName = $row[ "Name" ]; $published = $row[ "Published" ]; $open = (( strlen( $openSections[ $gameID ] ) > 0 ) && ( strlen( $alreadyOpened[ $gameID ] ) <= 0 )); $anchorName = "game$gameID"; if ( strlen( $anchoredSections[ $gameID ] ) > 0 ) { $anchorPoint = ""; } else { $anchorPoint = ""; $anchoredSections[ $gameID ] = "anchored"; } if ( $open ) { $icon = " \"Close"; $alreadyOpened[ $gameID ] = "open"; } else { $icon = " \"Open"; } $designers = getDesigners( $gameID ); $publishers = getPublishers( $gameID ); echo "

  • $anchorPoint $icon $reviewDate - \n"; // Open/close on title. if ( $open ) { echo " "; $alreadyOpened[ $gameID ] = "open"; } else { echo " "; } echo "\n $gameName, designed by $designers, published $published.
    \n"; if ( $open ) { // Print game review. $sql = "SELECT QuickViews.review AS Review FROM QuickViews WHERE ( gameid = $gameID )"; $reviewResults = sqlQuery( $sql, false ); $reviewRow = mysql_fetch_array( $reviewResults ); $review = $reviewRow[ "Review" ]; echo $review; $geekRef = getGeekReference( $gameID ); if ( strlen( $geekRef ) > 0 ) echo " " . $geekRef . "Boardgame Geek Info"; $funagainRef = getFunagainReference( $gameID ); if ( strlen( $funagainRef ) > 0 ) { echo " $funagainRef \"Buy

    \n"; } $alreadyOpened[ $gameID ] = "open"; } echo "
  • \n"; } // displayReview sqlConnect(); sqlSelectDB(); // Determine the client table name. $userIP = getenv( "REMOTE_ADDR" ); $userPort = getenv( "REMOTE_PORT" ); // echo "

    The remote user address-port is $userIP-$userPort.
    \n"; // DEBUG // echo "

    The remote user address is $userIP.
    \n"; // DEBUG if ( isSet( $action ) && ( strlen( $action ) > 0 )) { // There is an action in the URL. switch ( $action ) { case "open": openSection( $tableName, $userIP, $gameid ); break; case "close": closeSection( $tableName, $userIP, $gameid ); break; case "closeAll": closeSection( $tableName, $userIP, "*" ); break; } // switch ( $action ) } // Access the database to see which reviews the user wants open. $openSections = array(); $sql = "SELECT gameid FROM $tableName WHERE ( ipaddr = \"$userIP\" )"; $openTableResults = sqlQuery( $sql, false ); // showResults( $openTableResults ); // DEBUG while ( $row = mysql_fetch_array( $openTableResults )) { $openSections[ $row[ "gameid" ] ] = "open"; } // printArray( $openSections ); // DEBUG // Start an array to ensure that the topmost review is anchored. $anchoredSections = array(); // Start an array to prevent reviews from opening twice on one page. $alreadyOpened = array(); echo "

    Recent Quick Views

    Click on a folder icon or game title to expand or collapse a review (or close all now).
    \n"; // Get last 5 QuickView reviews. $sql = "SELECT QuickViews.date AS Date, GameInfo.gameid AS gameid, GameInfo.name AS Name, GameInfo.release AS Published FROM QuickViews, GameInfo WHERE ( QuickViews.gameid = GameInfo.gameid ) ORDER BY Date DESC LIMIT 0,5"; $sqlResults = sqlQuery( $sql, false ); $rowCount = 0; echo "

      \n"; while ( $row = mysql_fetch_array( $sqlResults )) { displayReview( $row, $anchoredSections, $openSections, $alreadyOpened ); $rowCount++; } // while echo "
    \n\n"; echo "

    All Quick Views

    Click on a folder icon or game title to expand or collapse a review (or close all now).
    \n"; $orderField = "GameInfo.name"; if ( isset( $orderBy )) { if ( 0 == strcmp( $orderBy, "Date" )) $orderField = "Date DESC, GameInfo.name"; else if ( 0 == strcmp( $orderBy, "Published" )) $orderField = "Published DESC, GameInfo.name"; else if ( 0 == strcmp( $orderBy, "Designer" )) { $orderField = "Designer.name, GameInfo.name"; } } // Get all Quick Views $sql = "SELECT QuickViews.date AS Date, GameInfo.gameid AS gameid, GameInfo.name AS Name, GameInfo.release AS Published, MIN( GameDesigner.designerid ), Designer.name FROM QuickViews, GameInfo, GameDesigner, Designer WHERE ( QuickViews.gameid = GameInfo.gameid ) && ( GameInfo.gameid = GameDesigner.gameid ) && ( GameDesigner.designerid = Designer.designerid ) GROUP BY GameInfo.gameid ORDER BY $orderField ASC"; $sqlResults = sqlQuery( $sql, false ); $rowCount = 0; echo "

      \n"; while ( $row = mysql_fetch_array( $sqlResults )) { displayReview( $row, $anchoredSections, $openSections, $alreadyOpened ); $rowCount++; } // while echo "
    \n\n"; ?>
    \n"; include( "../php/stats.phtml" ); echo "Page hits: " . returnAndIncrement( "../cgi-bin/games.txt" ) . ".\n"; echo "Last Modification: " . getSelfModTime() . ".\n"; ?>