function test() { $row = array("name" => "Airline", "iata" => "AA", "icao" => "BBB", "mode" => "F"); $this->assertEqual(format_airline($row), "Airline (AA)"); $row = array("name" => "Airline", "iata" => null, "icao" => "BBB", "mode" => "F"); $this->assertEqual(format_airline($row), "Airline (BBB)"); $row = array("name" => "Non-Airline", "iata" => "XXX", "mode" => "X"); $this->assertEqual(format_airline($row), "Non-Airline"); }
This is an automatically generated list of all airline and airport route maps on OpenFlights. See <a href="/data.html">Data</a> for data downloads and more information. <?php include '../php/helper.php'; $db = mysql_connect("localhost", "openflights"); mysql_select_db("flightdb2", $db); print "<h2>Airline route maps (by IATA code)</h2>"; $sql = "SELECT * FROM airlines WHERE alid IN (SELECT DISTINCT alid\n\t FROM routes) ORDER BY iata"; $result = mysql_query($sql, $db); while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { $iata = $row['iata']; if (ctype_alnum($iata)) { $label = format_airline($row); print "<a href='/airline/{$iata}'>{$label}</a>, "; } } print "<h2>Airport route maps (by IATA code)</h2>"; $sql = "SELECT * FROM airports WHERE apid IN (SELECT DISTINCT src_apid\n\t FROM routes) ORDER BY iata"; $result = mysql_query($sql, $db); while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { $iata = $row['iata']; if (ctype_alnum($iata)) { $label = format_airport($row); print "<a href='/airport/{$iata}'>{$label}</a>, "; } } print "<h2>Airport route maps (by ICAO code)</h2>"; $sql = "SELECT * FROM airports WHERE apid IN (SELECT DISTINCT src_apid\n\t FROM routes) ORDER BY iata";
// dummy } else { $sql .= " iata != '' AND iata != 'N/A'"; } if (!$offset) { $offset = 0; } $sql .= " ORDER BY name"; $result = mysql_query($sql . " LIMIT 10 OFFSET " . $offset, $db) or die('0;Operation ' . $param . ' failed: ' . $sql); $result2 = mysql_query(str_replace("*", "COUNT(*)", $sql), $db); if ($row = mysql_fetch_array($result2, MYSQL_NUM)) { $max = $row[0]; } printf("%s;%s;%s", $offset, $max, $sql); while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { if ($row["uid"] || $uid == $OF_ADMIN_UID) { if ($row["uid"] == $uid || $uid == $OF_ADMIN_UID) { $row["al_uid"] = "own"; // editable } else { $row["al_uid"] = "user"; // added by another user } } else { $row["al_uid"] = null; // in DB } unset($row["uid"]); $row["al_name"] = format_airline($row); print "\n" . json_encode($row); }
function resolve_airline($iata_code) { global $dbh; if (empty($iata_code)) { return null; } try { $sth = $dbh->prepare("SELECT * FROM airlines WHERE iata=?"); $sth->execute(array($iata_code)); if ($sth->rowCount()) { $result = $sth->fetch(); return array("id" => $result["alid"], "name" => htmlentities(format_airline($result))); } else { return null; } } catch (PDOException $e) { die(_("Database error.")); } }
$sql = sprintf("%s ORDER BY LENGTH(iata) DESC, name LIMIT %s", $sql, $limit); break; } } else { $sql = sprintf("%s ORDER BY name LIMIT %s", $sql, $limit); } if ($limit > 1 && !$multi) { print "<ul class='autocomplete'>"; } $rs = mysql_query($sql) or die($sql); if (mysql_num_rows($rs) > 0) { while ($row = mysql_fetch_assoc($rs)) { if ($limit > 1) { printf("<li class='autocomplete' id='%s'>%s</li>", $row["alid"], format_airline($row)); } else { printf("%s;%s", $row["alid"], format_airline($row)); } } } } else { if ($_POST['plane']) { // Autocompletion for plane types $query = mysql_real_escape_string($_POST['plane']); if (strstr($query, '-')) { $dashes = " "; } else { $dashes = "AND name NOT LIKE 'Boeing %-%' AND name NOT LIKE 'Airbus %-%'"; } $sql = "SELECT name,plid FROM planes WHERE public='Y' AND name LIKE '%" . $query . "%' " . $dashes . "ORDER BY name LIMIT 6"; $rs = mysql_query($sql); // If no or only one result found, then try again