Sie sind nicht angemeldet.

Royceair

scandiFLY

  • »Royceair« ist der Autor dieses Themas

wcf.user.posts: 65

Wohnort: EDSH

Beruf: scandiFLY - Meister

  • Nachricht senden

1

Sonntag, 1. August 2010, 07:21

Mehrere dynamische Tabellen (xml feed) gleichzeitig sortieren?

Moin,

Ich hab ein grosses Problem. Ich suche einen php/JS Durchblicker, welcher mir erklärt:
Wie ich 2 dynamisch mittels xml Export erzeugte Tabellen mit Tools à la Tabelsorter, Sorter oder Tinysorter... gleichzeitig und unabhängig auf einer Seite zum sortieren bringe. Im Moment klappt das nur mit der einen oder der anderen.
Bin ja schon froh, dass ich als absoluter try & error Nichtprogrammierer es geschafft habe, 2 Abfragen gleichzeitig auf eine Seite zu bringen...

Ich hab's jetzt aufgegeben, ich weiss nur, dass in den Sortierscripten die Abfragen überschrieben werden...?

Für jemanden, der sich mit der Materie auskennt, müssten das Peanuts sein - Ist einer unter uns?

Ich bedanke mich schon mal im Voraus und hoffe... :)
rock on... der chris


scandiFLY Forum FSeconomy Wiki


2

Sonntag, 1. August 2010, 07:57

Leider nur nackte HTML und PHP-Kenntnisse, von daher leider. Die oben von dir genannten Tools kenn ich nicht, wir mußten alles in Notepad machen. :pfeif:
:thumb:

Lauter Werkzeuge halt

Royceair

scandiFLY

  • »Royceair« ist der Autor dieses Themas

wcf.user.posts: 65

Wohnort: EDSH

Beruf: scandiFLY - Meister

  • Nachricht senden

3

Sonntag, 1. August 2010, 08:06

Das sind allles Javascripte. Die Formatierung läuft meistens über CSS.

z.B.:
Tinytable: http://sandbox.leigeber.com/tinytablev3/index.html

sorter:[url]http://scandifly.de/sorter/sca_fbo.php[/url]

tablesort: http://www.j-berkemeier.de/TableSort.html
rock on... der chris


scandiFLY Forum FSeconomy Wiki


4

Sonntag, 1. August 2010, 08:41

Interessant, aber CSS Dateien bin ich weitestgehend aus dem Weg gegangen. Entschuldigung das ich dir nicht helfen kann :leider:
JScript ist aber nicht gerade für Anfänger. Für was brauchst den das wenn man fragen darf, ein paar Bücher hab ich ja....... :sagnix:
:thumb:

Lauter Werkzeuge halt

Royceair

scandiFLY

  • »Royceair« ist der Autor dieses Themas

wcf.user.posts: 65

Wohnort: EDSH

Beruf: scandiFLY - Meister

  • Nachricht senden

5

Sonntag, 1. August 2010, 08:59

Ich bin gerade dabei, die scandiFLY Seite zu relaunchen... ja, so was gibt es, die Alte ist aber wirklich grauslich (!)

So und nun gibt es auf FSEconomy xml data export feeds - sowas z.B.:
gttp://atilla.hinttech.nl/fseconomy/xml?id=xxxxx&key=xxxxxxx&query=groupAircraft
Und daraus lassen sich dann sehr einfach die Datenbankabfragen generieren. Hier also die AC's der Gruppe.

Alles nicht so schlimm. Ich brauch das jetzt z. B. Für meine FBO (Airport) Seiten

ENFG Leirin Fagernes:
- Mit dynamisch erzeugter googlemaps Karte
- Liste der Jobs From/to: klick... Vergiss die Formatierung, dass kommt noch. ^^
- bla bla...

2 dynamischeTabellen auf einer Seite - Aber ich bekomms nicht hin, Beide sortieren zu lassen.
rock on... der chris


scandiFLY Forum FSeconomy Wiki

Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von »Royceair« (1. August 2010, 09:02)


6

Sonntag, 1. August 2010, 10:17

Mit JavaScript hab ich mich noch nicht wirklich auseinandergesetzt, aber es müsste eigentlich kein Problem sein, in PHP die XML Feeds bzw die Tabellen in Arrays einzulesen und die Arrays einfach mit den PHP-internen Funktionen neu zu sortieren und anschliessend halt auszugeben. :hm:
| Intel i7 5930K @4.25 Ghz | 32GB DDR4-3400 | Asus STRIX X99 Gaming | STRIX GTX 1080 SLI OC'd |
| Oculus Rift CV1 | TrackIR 5 | Slaw USAF Pedals | Thrustmaster HOTAS Warthog | Obutto r3volution |

Those who say it cannot be done should not interrupt the people doing it...

Airbus_Simmer

Flusianer & Webentwickler

wcf.user.posts: 495

Wohnort: Schweiz

Beruf: Schüler

  • Nachricht senden

7

Sonntag, 1. August 2010, 10:22

Wie sieht den dein PHP Skript aus?

Ich würde jetzt via SimpleXML beide XML Dateien einlesen und beide ins selbe Array schrieben (array_merge). Dann nimmst du dir eine schöne Sortier Funktion und sortierst das Array nach deinen Wünschen. Dann kannst du es via foreach Schleife ausgeben :)
Mit besten Grüssen aus der Schweiz

Simon

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Airbus_Simmer« (1. August 2010, 10:44)


Royceair

scandiFLY

  • »Royceair« ist der Autor dieses Themas

wcf.user.posts: 65

Wohnort: EDSH

Beruf: scandiFLY - Meister

  • Nachricht senden

8

Sonntag, 1. August 2010, 10:49

Nicht erschrecken.... try & error ^^ Als Sorter hab ich den genommen: http://www.leigeber.com/2008/11/javascript-table-sorter/

Zitat

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>ENFG</title>
<link rel="stylesheet" href="style.css" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css">
<!--
body {
background-color: #ADCBE7;
}
-->
</style>
</head>
<body>
<?php
function From(){
$id = 'xxxxx';
$key = 'xxxxxxxx';
$queryMembers = 'groupMembers';
$queryFeedFrom = 'JobsFeedFrom&icao="ENFG"';
$queryURLRoot = 'http://atilla.hinttech.nl/fseconomy/xml';
$targetFile = $queryURLRoot."?id=$id&key=$key&query=$queryFeedFrom";
$xmlDoc = simplexml_load_file($targetFile);?>


<table cellpadding="0" cellspacing="0" border="0" class="sortable" id="sorter1">
<tr>
<th>LOCATION</b></th>
<th>TO</b></th>
<th>FROM</b></th>
<th>AMOUNT</b></th>
<th>TYPE</b></th>
<th>COMMODITY</b></th>
<th>PAY</b></th>
<th>EXPIRES</b></th>
<th>NM</b></th>
</tr>

<?php
foreach($xmlDoc->job as $log) {
?>
<tr>
<td><?php echo $log->location?></td>
<td><?php echo $log->to?></td>
<td><?php echo $log->from?></td>
<td><?php echo $log->amount?></td>
<td><?php echo $log->unitType?></td>
<td><?php echo $log->commodity?></td>
<td><?php echo $log->pay?></td>
<td><?php echo $log->expires?></td>
<td><?php echo round($log->distance, 2)?>
</tr>
<?php
}
?>
</table>
<?php
}
?>

<?php
function TO(){
$id = 'xxxxx';
$key = 'xxxxxxxx';
$queryMembers = 'groupMembers';
$queryFeedTo = 'JobsFeedTo&icao="ENFG"';
$queryURLRoot = 'http://atilla.hinttech.nl/fseconomy/xml';
$targetFile = $queryURLRoot."?id=$id&key=$key&query=$queryFeedTo";
$xmlDoc = simplexml_load_file($targetFile);?>


<table cellpadding="0" cellspacing="0" border="0" class="sortable" id="sorter2">
<tr>
<th>LOCATION</b></th>
<th>TO</b></th>
<th>FROM</b></th>
<th>AMOUNT</b></th>
<th>TYPE</b></th>
<th>COMMODITY</b></th>
<th>PAY</b></th>
<th>EXPIRES</b></th>
<th>NM</b></th>
</tr>

<?php
foreach($xmlDoc->job as $log) {
?>
<tr>
<td><?php echo $log->location?></td>
<td><?php echo $log->to?></td>
<td><?php echo $log->from?></td>
<td><?php echo $log->amount?></td>
<td><?php echo $log->unitType?></td>
<td><?php echo $log->commodity?></td>
<td><?php echo $log->pay?></td>
<td><?php echo $log->expires?></td>
<td><?php echo round($log->distance, 2)?>
</tr>
<?php
}
?>
</table>
<?php
}
?>



<?php echo From(); ?>

<?php echo To(); ?>

<script type="text/javascript" src="script.js"></script>
<script type="text/javascript">
var sorter=new table.sorter('sorter');
sorter.init('sorter1',1);</script>



</body>

</html>
rock on... der chris


scandiFLY Forum FSeconomy Wiki


Airbus_Simmer

Flusianer & Webentwickler

wcf.user.posts: 495

Wohnort: Schweiz

Beruf: Schüler

  • Nachricht senden

9

Sonntag, 1. August 2010, 10:51

und du willst jetzt da einfach noch die 2. xml Datei reinkriegen?
Mit besten Grüssen aus der Schweiz

Simon

Royceair

scandiFLY

  • »Royceair« ist der Autor dieses Themas

wcf.user.posts: 65

Wohnort: EDSH

Beruf: scandiFLY - Meister

  • Nachricht senden

10

Sonntag, 1. August 2010, 11:00

Die hab ich ja schon drin. ^^ [url]http://scandifly.de/sorter/test_enfg.php[/url]

Ich möchte beide Tabellen sortiert haben - und das geht nicht. Alle Möglichkeiten mit dem Sorter m.E. schon ausprobiert...

Hier mal das Originalquerry zum ausprobieren:
Bei manchen xml feeds brauchts auch noch id + key

http://atilla.hinttech.nl/fseconomy/xml?query=JobsFeedFrom&icao='ENFG'
http://atilla.hinttech.nl/fseconomy/xml?query=JobsFeedTo&icao='ENFG'

edit:
Die 2 Links laufen nicht aus dem Forum- copy & paste.
rock on... der chris


scandiFLY Forum FSeconomy Wiki

Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von »Royceair« (1. August 2010, 11:20)


Airbus_Simmer

Flusianer & Webentwickler

wcf.user.posts: 495

Wohnort: Schweiz

Beruf: Schüler

  • Nachricht senden

11

Sonntag, 1. August 2010, 11:26

Probier es mal mit folgendem JS Code:

$this->cacheCode('\1','\3')
Mit besten Grüssen aus der Schweiz

Simon

Royceair

scandiFLY

  • »Royceair« ist der Autor dieses Themas

wcf.user.posts: 65

Wohnort: EDSH

Beruf: scandiFLY - Meister

  • Nachricht senden

12

Sonntag, 1. August 2010, 11:33

Ne..... oder....???

Weisst Du eigentlich, was ich die letzten 10 Stunden ausprobiert habe.... :lol:

ES TUT

Ich weiss zwar noch nicht warum, aber egal.

1000 Dank für Deine Hilfe :luxhello: :luxhello:

Wirklich tolle Leute hier im FFF
rock on... der chris


scandiFLY Forum FSeconomy Wiki


Airbus_Simmer

Flusianer & Webentwickler

wcf.user.posts: 495

Wohnort: Schweiz

Beruf: Schüler

  • Nachricht senden

13

Sonntag, 1. August 2010, 11:38

Kein Problem.

So wie es ausschaut erwartet die Methode init den Namen des soeben instanziierten Objekts. (warum auch immer....). Wenn das Objekt dann gleich heisst wie die ID (sorter1, sorter2) geht das nicht.

:bier:
Mit besten Grüssen aus der Schweiz

Simon

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Airbus_Simmer« (1. August 2010, 11:48)


Royceair

scandiFLY

  • »Royceair« ist der Autor dieses Themas

wcf.user.posts: 65

Wohnort: EDSH

Beruf: scandiFLY - Meister

  • Nachricht senden

14

Sonntag, 1. August 2010, 11:44

Ah... ganz vergessen viel Spass noch bei der Party heute... ;)


Edit:
Die Schweiz hat heute was zu feiern: klick...
rock on... der chris


scandiFLY Forum FSeconomy Wiki

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Royceair« (1. August 2010, 12:02)


Royceair

scandiFLY

  • »Royceair« ist der Autor dieses Themas

wcf.user.posts: 65

Wohnort: EDSH

Beruf: scandiFLY - Meister

  • Nachricht senden

15

Mittwoch, 11. August 2010, 14:13

Der Unwissende hat noch einmal eine Frage an die Programmmiergemeinde:

Manchmal kommt es vor, dass dass die Datenbank von FSEconomy nicht online ist.
Wenn das nun auftritt und ich die Tabellen aufrufe, bekomme ich über simplexml natürlich keinen Kontakt, somit php Fehlermeldungen und damit eine ziemlich "unschöne" Seite gezeigt. Da verschiebts die Formatierung schon ganz ordentlich. ?(

Gibt es nun eine Lösung, eine Sicherheitsroutine einzubauen, so dass, falls keine Verbindung zustande kommt. z.B. nur ein Text erscheint: Zur Zeit keine Verbindung möglich und die Tabellen nicht angezeigt werden?

Danke schon mal im Voraus. :)
rock on... der chris


scandiFLY Forum FSeconomy Wiki

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »Royceair« (11. August 2010, 14:14)


16

Mittwoch, 11. August 2010, 14:47

Naja, dadurch das php ja Serverseitig läuft, wirst da als User nix ändern können, es sei denn du bist Admin am Server, denn da kann ich sehr wohl eine "Sorry bin zur Zeit down" -Seite reinschieben. Machen
auch die meisten so. Wenn er offline ist rufst du die Seite über Lesezeichen auf, denke ich. Somit kannst auch keine Php-Fehlermeldung bekommen, sondern nur die Html-Anzeige(Start)seite. Offline und php geht
nüscht. Ich hoffe ich habe deine Anfrage richtig interpretiert. :sagnix:
:thumb:

Lauter Werkzeuge halt

Airbus_Simmer

Flusianer & Webentwickler

wcf.user.posts: 495

Wohnort: Schweiz

Beruf: Schüler

  • Nachricht senden

17

Mittwoch, 11. August 2010, 15:11

Bau ein try/catch um das SimpleXML rum ;)

Im Try Block liest du via SimpleXML die xml Datei aus. Sobald ein Fehler im try Block passiert führt PHP den Catch Block aus. Dort kannst du dann z.B. ein

$this->cacheCode('\1','\3')

schreiben.
Mit besten Grüssen aus der Schweiz

Simon

Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von »Airbus_Simmer« (11. August 2010, 15:17)