Ich habe nochmal eine Frage
Ich habe das nun etwas weiter entwickelt. So soll an Flughäfen wo an einem Tag kein Flug stattfindet, eine Informationszeile herausgegeben werden.. leider passiert das nicht
Quellcode:
Wo ist mein doofer Fehler?
Ich habe das nun etwas weiter entwickelt. So soll an Flughäfen wo an einem Tag kein Flug stattfindet, eine Informationszeile herausgegeben werden.. leider passiert das nicht
Quellcode:
PHP:
<?php
$heute = getdate();
$datum = date("w");
function calculate_spheric_distance($lat1, $lat2, $lon1, $lon2)
{
$faktor = 3.141592535 / 180; //umrechnungsfaktor nach bogenmass
$radius = 6370; //mittlerer Erdradius
$a_lat = $lat1 * $faktor; // breite
$a_lon = $lon1 * $faktor; //länge
$b_lat = $lat2 * $faktor; //breite
$b_lon = $lon2 * $faktor; //länge
$distance = round(acos(sin($b_lat)*sin($a_lat)+cos($b_lat)*cos($a_lat)*cos($b_lon - $a_lon)) * $radius /1.852, 2);
return $distance;
}
// Parameter aus Link holen
$abfrage = "SELECT
`piloten`.`letzter_standort` ,
`piloten`.`aktueller_Flug` ,
`Flugplan`.`flughafenid1` ,
`Flugplan`.`dep_time` ,
`Flugplan`.`flughafenid2` ,
`Flugplan`.`arr_time` ,
`Flugplan`.`flugnummer`,
`Flugplan`.`days`,
`Flugplan`.`registrierung` ,
`Flugplan`.`flugzeug_id`,
`Flugplan`.`gebucht`,
`Flughafen`.`flughafenid`,
`Flughafen`.`flughname`
FROM
piloten,
Flugplan,
Flughafen
WHERE
(pilot_id = '" . mysql_real_escape_string($pilot_id) . "')
And
(`Flugplan`.`flughafenid2` = `Flughafen`.`flughafenid`)
AND
(`Flugplan`.`comment` = '')
AND
(`piloten`.`letzter_standort` = `Flugplan`.`flughafenid1`)
AND
(`Flugplan`.`days` LIKE '%$datum%')
ORDER BY
`Flugplan`.`flughafenid2` ASC LIMIT 0 , 100;";
$ergebnis = mysql_query($abfrage) or die ("MySQL-Error: " . mysql_error());
?>
<table WIDTH="99%" border="0" align="center" "."cellpadding="1" cellspacing="1" bgcolor="#666666" class="tableLine">
<tr>
<th>Flugnummer</th>
<th>Abflugzeit</th>
<th>Zielflughafen</th>
<th>Ankunftszeit</th>
<th>Flugtage</th>
<th>Stops</th>
<th>Entfernung</th>
<th>Flugzeug</th>
<th>Info</th>
</tr>
<?php
$colchange = 1;
while ($dataset = mysql_fetch_array($ergebnis)){ // <--- Klammerfehler, hier gehört die klammer auf
// Flughafen-ID's abholen
$flughafenid1 = $dataset['flughafenid1'];
$flughafenid2 = $dataset['flughafenid2'];
// Geo-Koordinaten der Flughäfen besorgen
$airport1Query = sprintf("SELECT lat,lon FROM Flughafen WHERE flughafenid = '%s'", $flughafenid1);
$airport2Query = sprintf("SELECT lat,lon FROM Flughafen WHERE flughafenid = '%s'", $flughafenid2);
$airport1Result = mysql_query($airport1Query) or die( mysql_error() );
$airport2Result = mysql_query($airport2Query) or die( mysql_error() );
$airport1Data = mysql_fetch_assoc($airport1Result);
$airport2Data = mysql_fetch_assoc($airport2Result);
$lat1 = $airport1Data['lat'];
$lat2 = $airport2Data['lat'];
$lon1 = $airport1Data['lon'];
$lon2 = $airport2Data['lon'];
// Fertig: Geo-Koordinaten der Flughäfen besorgen
// Entfernung berechnen
$entfernung = calculate_spheric_distance($lat1, $lat2, $lon1, $lon2);
// modulo ob gerade oder ungerade
if ($colchange % 2) {
$color = "#B6B6B6";
} else {
$color = "#999";
}
if (($ergebnis)!=0){
if ($dataset['aktueller_Flug'] != ''){
{
print "<tr bgcolor=\"#999999\" align=\"center\">";
print "<td></td><td></td><td></td><td>You allready booked a flight</td><td></td><td></td><td></td><td></td></tr>";
}
print "</td></tr>\n";
}else{
if($dataset['gebucht'] == 'B'){
$gebucht = '*fully booked*';
}
elseif($dataset['gebucht'] == 'C'){
$gebucht = '*Flight canceled*';
}
else
{
$gebucht="<a href='FPS_buchung_flug.php?flugnummer={$dataset['flugnummer']}'>{$dataset['flugnummer']}</a> ";
}
print " <tr bgcolor=\"$color\">\n";
print " <td>{$gebucht}</td>\n";
print " <td>{$dataset['dep_time']}</td>\n";
print " <td>{$dataset['flughname']} </td>\n";
print " <td>{$dataset['arr_time']} </td>\n";
print " <td>{$dataset['days']} </td>\n";
print " <td>{$dataset['via']} </td>\n";
print " <td>$entfernung nm</td>\n";
print " <td>{$dataset['flugzeug_id']} "."</td>\n";
print " <td><a href='FPS_buchung_fluginfo.php?flugnummer={$dataset['flugnummer']}'>Info</a> </td>\n";
print " </tr>\n";
// ++ hinter der Variablen bewrikt das immer 1 dazugezählt wird. in einer schleife passiert das bei jedem durchgang.
$colchange++;
}
}
else
{
print " <tr bgcolor=\"$color\">\n";
print " <td></td>\n";
print " <td></td>\n";
print " <td></td>\n";
print " <td></td>\n";
print " <td>We are Sorry, but today we don`t offer any Flights</td>\n";
print " <td></td>\n";
print " <td></td>\n";
print " <td></td>\n";
print " <td></td>\n";
print " </tr>\n";
}
}// while ende
?>
Wo ist mein doofer Fehler?