'gforum_Coaches', 'retailer' => 'gforum_Retailers', 'runshop' => 'gforum_Runshops', 'race' => 'gforum_Triathlons', 'fitter' => 'gforum_Fitters', 'triclub' => 'gforum_Triclubs', 'roadshow' => 'gforum_Roadshow' ); if ( isset($_POST['action'] )) { if ( $_POST["action"] == 'test' ) { connectdb( 'runshop' ); fetchJson( 'runshop' ); echo 'testing'; } } if (is_ajax()) { if (isset($_POST["action"]) && !empty($_POST["action"])) { //Checks if action value exists $action = $_POST["action"]; switch($action) { //Switch case for value of action case "test": return_json(); break; } } } //Function to check if the request is an AJAX request function is_ajax() { return isset($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest'; } function return_json(){ $return = $_POST; echo json_encode($return); } function connectdb( $slug = null ) { $data = array(); global $db_host, $db_user, $db_pass, $db_name; global $db_tables; if ( $slug !== null && $db_tables[$slug] ) { $table = $db_tables[$slug]; $mysqli = new mysqli( $db_host, $db_user, $db_pass, $db_name); if ( $mysqli->connect_errno ) { echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error; } // Select all the rows in the markers table $query = select_table( $slug ); /* Prepared statement, stage 1: prepare */ if ( ! ($stmt = $mysqli->prepare( $query ) ) ) { echo "Prepare failed: (" . $mysqli->errno . ") " . $mysqli->error; return; } /* Execute statement */ if ( !$stmt->execute() ) { echo "Execute failed: (" . $stmt->errno . ") " . $stmt->error; return; } /* Get results */ if ( !( $result = db_get_result( $stmt ) ) ) { echo "Getting result set failed: (" . $stmt->errno . ") " . $stmt->error; return; } $id = $slug . '_id'; $name = $slug . '_name'; $lat = $slug . '_lat'; $lng = $slug . '_lng'; $info1 = $slug . '_address'; $info2 = $slug . '_address_two'; $info3= $slug . '_city'; $info4 = $slug . '_state'; $phone = $slug . '_phone'; $email = $slug . '_email'; $website = $slug . '_website'; $details = ''; if ( $slug == 'coach') $details = '/coaches/individual.php?coach_id='; if ( $slug == 'retailer') $details = '/retailers/individual.php?retailer_id='; if ( $slug == 'fitter') $details = '/fitters/individual.php?fitter_id='; if ( $slug == 'runshop') $details = '/runshops/individual.php?runshop_id='; if ( $slug == 'triclub') $details = '/triclubs/individual.php?triclub_id='; if ( $slug == 'roadshow' ) { $details = '/roadshow/individual.php?roadshow_id='; } if ( $slug == 'race' ) { $name = 'name'; $lat = 'lat'; $lng = 'lng'; $info1 = 'date'; $info2 = 'swim'; $info3 = 'bike'; $info4 = 'run'; $id = 'uid'; $phone = 'phone'; $email = 'email'; $details = '/individual.php?uid='; } // Iterate through the rows, printing XML nodes for each while ( $row = array_shift( $result ) ) { if ( $row[$lat] && $row[$lng] ) { $data[] = array( 'category' => $slug, 'name' => htmlentities ($row[$name]), 'lat' => $row[$lat], 'lng' => $row[$lng], 'info1' => htmlentities ($row[$info1]), 'info2' => htmlentities ($row[$info2]), 'info3' => htmlentities ($row[$info3]), 'info4' => htmlentities ($row[$info4]), 'phone' => htmlentities ($row[$phone]), 'email' => htmlentities ($row[$email]), 'website' => htmlentities ($row[$website]), 'details' => $details . $row[$id], ); } } /* explicit close recommended */ $stmt->close(); $mysqli->close(); } else { $data = 'no data'; } $data = json_encode( $data ); return $data; } function select_table( $slug = null ) { global $db_tables; $query = ''; if ( $slug !== null ) { $table = $db_tables[$slug]; if ( $table ) { if ( $slug == 'race' ) { $today = date('Y-m-d'); $query ='SELECT * FROM ' . $table . ' WHERE date >= "' .$today . '"'; } else { $query ='SELECT * FROM ' . $table . ' WHERE ' . $slug . '_lat <> 0 AND ' .$slug . '_lng <> 0'; } } } return $query; } function db_get_result( $Statement ) { $RESULT = array(); $Statement->store_result(); for ( $i = 0; $i < $Statement->num_rows; $i++ ) { $Metadata = $Statement->result_metadata(); $PARAMS = array(); while ( $Field = $Metadata->fetch_field() ) { $PARAMS[] = &$RESULT[ $i ][ $Field->name ]; } call_user_func_array( array( $Statement, 'bind_result' ), $PARAMS ); $Statement->fetch(); } return $RESULT; } ?>