sortier option und suchen

Alles zum Thema FileMaker und PHP.
Siehe auch http://www.fm-and-php.info
Forumsregeln
Sie befinden sich im Archivforum! Sie können hier alte Beiträge lesen und vorhandene Diksussionen ergänzen.
Neue Diskussionen können Sie in diesem Archiv nicht erstellen!

sortier option und suchen

Beitragvon daniel_php » Do 18. Mär 2004, 15:16

Hinweis: Eintrag wurde aus altem Forum importiert. Ggf. kann es dadurch zu Darstellungsproblemen kommen.

Hallo,

ich hab jetzt durch mein Betriebspraktikum angefangen mit FileMaker zu arbeiten und sitze im Moment an einem Projekt, indem ich eine Suchfunktion und eine Sortieroption einbauen soll. Da ich bis jetzt nur das Tutorial gelesen habe und auch sonst nicht der beste in PHP bin, weiß ich nicht mehr ganz weiter.

Rausgefunden habe ich das der Befehl zum sortieren

void function addSortParameter($fieldname, [$sortorder = "ascend"]) ist.

Eingesetzt habe ich den Befehl so:

<a href='index.php?=".$FM->addSortParameter("Start","ascend")."'>Sortieren</a>

Das ging nicht, dann auch mal so

<a href='".$FM->addSortParamter("Start","ascend")."'>Sortieren!</a>

Aber das ging auch nicht.

Also meine datenbank heißt Vorgaenge.fp5 und das Feld Start.
ascend und descend ist ja nur für aufsteigend, absteigend.


Meine 2. Frage wäre wie ich die Suchfunktion umsetze! :)
da bin ich noch ratloser als beim Sortieren!


schonmal danke für die Antworten!!!

Daniel




****UPDATE*****

Ich hab noch ne frage :D


Und zwar hab ich ne rechen Formel in FileMaker und wenn ich die anzeigen lass sind die zahlen öfters mal periode 3 oder so und dadurch sprengt mir die Zahl das feld. geht es das die zahl zwar 1.333333333333333333333333333333 aber der nur 1.33 anzeigt?


****UPDATE****

<font size=1>[ Diese Nachricht wurde editiert von : daniel_php am 18.03.2004 14:16 ]</font>

[ Diese Nachricht wurde editiert von : daniel_php am 18.03.2004 15:13 ]
daniel_php
 
Beiträge: 11
Registriert: Do 18. Mär 2004, 01:00

Antwort

Beitragvon Anonymous » Do 18. Mär 2004, 17:25

Hinweis: Eintrag wurde aus altem Forum importiert. Ggf. kann es dadurch zu Darstellungsproblemen kommen.

hallo,

zu deinen ansätzen: leider ziemlich falsch, da in PHP bzw. mit FM-and-PHP diese Parameter nicht in die URL gehören, sondern in eine Datei.

am besten liest du dir einmal das Tutorial von fm-and-php.info durch, dann wird dir vieles klarer werden.


Und zwar hab ich ne rechen Formel in FileMaker und wenn ich die anzeigen lass sind die zahlen öfters mal periode 3 oder so und dadurch sprengt mir die Zahl das feld. geht es das die zahl zwar 1.333333333333333333333333333333 aber der nur 1.33 anzeigt?

klar, rechte maustaste auf das Feld in der Layoutansicht und dann "Zahlenformat"

ciao,
stefan
Anonymous
 

Antwort

Beitragvon Anonymous » Do 18. Mär 2004, 17:28

Hinweis: Eintrag wurde aus altem Forum importiert. Ggf. kann es dadurch zu Darstellungsproblemen kommen.

kleiner nachtrag noch:

den sortierungsparameter gibst du natürlich schon in der url mit.

zB
<a href="./datei.php?sort_by=asc"> und mit $_REQUEST['sort_by'] kannst du in der Datei dann das ganze einbauen...

ciao
Anonymous
 

Antwort

Beitragvon daniel_php » Fr 19. Mär 2004, 10:10

Hinweis: Eintrag wurde aus altem Forum importiert. Ggf. kann es dadurch zu Darstellungsproblemen kommen.

hi

Also das mit den Nachkommastellen, hatte ich in FileMaker schon eingestellt auf 2 Nachkommanstellen, aber bei Periode hält er sich nicht dran, da macht er mehr Stellen!


_____________

Das Tutorial hatte ich mir durchgelesen, aber dadurch krieg ich trotzdem nicht mal so einfach nen such oder sortier funktion hin :P

mal noch ne frage zum sortieren, ich hab ne liste mit 8 überbegriffen und nur so 2 kleine pfeile zum sortieren da, woher weiß der bescheit das er genau das feld sortieren soll das in der spalte von dem pfeil ist. oder mit welchem befehl mach ich das das er halt auch nur die spalte sortiert wo ich auf den kleinen pfeil klicke..

bei diesem sortier befehl addSortParameter kann ich zwar nen feld angeben aber das feld ändert sich ja, je nachdem auf welche pfeil ich klick :)



Daniel
-----------------
daniel_php
 
Beiträge: 11
Registriert: Do 18. Mär 2004, 01:00

Antwort

Beitragvon Anonymous » Fr 19. Mär 2004, 11:40

Hinweis: Eintrag wurde aus altem Forum importiert. Ggf. kann es dadurch zu Darstellungsproblemen kommen.

hallo,

bei diesem sortier befehl addSortParameter kann ich zwar nen feld angeben aber das feld ändert sich ja, je nachdem auf welche pfeil ich klick :)

ja, sortieren in websiten ist nicht ganz ohne.
du müsstest bei jeder spalte den Namen des Felds (oder eine ID), die sortierreihenfolge etc mitgeben.

ciao,
stefan.
Anonymous
 

Antwort

Beitragvon daniel_php » Fr 19. Mär 2004, 12:38

Hinweis: Eintrag wurde aus altem Forum importiert. Ggf. kann es dadurch zu Darstellungsproblemen kommen.

hi,

also im mom blick ich nicht ganz durch :>


Was mir denke ich helfen könnte, wäre eine Art beispiel. Nicht unbedingt eine fertiges Sortierscript aber eine kleine Hilfe. Da ich sonst mit PHP gar nichts mache und im Moment nur wegen meinem Praktikum angefangen habe, bin ich noch sehr unerfahren. Das einzigste wissen ist mein html Wissen, und das wissen vom Tutorial. Und wenn beim Tutorial nur steht: "void function addSortParameter($fieldname, [$sortorder = "ascend"]) bringt mir das nicht viel :) So sachen wie editieren usw ist kein Problem mehr, da es im Tutorial beschrieben wird. Aber auf Sachen wie Sortieren oder Suchen geht das Tutorial leider nicht ein.



mfg Daniel
daniel_php
 
Beiträge: 11
Registriert: Do 18. Mär 2004, 01:00

Antwort

Beitragvon schube » So 21. Mär 2004, 23:36

Hinweis: Eintrag wurde aus altem Forum importiert. Ggf. kann es dadurch zu Darstellungsproblemen kommen.
Nachrichtensymbol: Bild

Hi!

Hier mal ein Skript aus einem aktuellem Projekt - nur damit Du siehst wie man die Parameter einsetzt:

Code:

global $Portal;
$FM = new FM_AND_PHP;
$FM->setFileMakerHost("filemaker.schubec-hosting.com", 591);
$FM->setDatabaseName("DBName.FP5");
$FM->setDatabaseUserPassword("user","pw");
$FM->setMaxGroupSize(20);
$FM->addSearchField("web_SessionID","123443" ,"eq");
$FM->setCommand("find");
$FM->setDebugLevel();
$FM->doGetQuery();
if ( 0 != $FM->getErrorNumber() AND 401 != $FM->getErrorNumber() ) {
echo "Error:".$FM->getErrorDescription();
}


CU,
Bernhard
Dipl-Ing. (FH) Bernhard Schulz,
Geschäftsführer von http://www.schubec.com
Leiter des FileMakerProfis-Team
FileMaker Schulungen unter http://www.fm-training.info
Benutzeravatar
schube
Administrator
 
Beiträge: 2324
Registriert: Mi 7. Jul 2010, 15:59
Wohnort: Salzburg, Österreich

Antwort

Beitragvon daniel_php » Mo 22. Mär 2004, 10:13

Hinweis: Eintrag wurde aus altem Forum importiert. Ggf. kann es dadurch zu Darstellungsproblemen kommen.

Hi,

Wie man die Parameter einsetzt ist mir im allgemeinen schon klar. Aber das ist alles nicht so einfach.


Also nochma ganz genau:

Ich hab ne Liste mit 8 Spalten. Jede Spalte hat in der Kopfzeile 2 Pfeile einer zeigt nach oben einer nach unten. Jetzt will ich das so machen das ich wenn ich auf den Pfeil der nach oben zeigt der aufsteigend Sortiert, und wenn ich auf den Pfeil der nach unten zeigt der absteigend sortiert. Natürlich auch nur genau die Spalte wo ich oben auf den Pfeil geklickt hab.

Wenn ich da jetzt einfach nur oben angeb $FM->addSortParameter("Feld","asc"), weiß ich nicht welches Feld ich eintragen muss weil das ja von Pfeil zu Pfeil (der halt mein Link zum sortieren ist) anders ist.

Daher hab ich mir halt gedacht:

Das ich in jeden Pfeil-Link den Befehl mit rein geb, weil ich nur so jede Spalte und jeden Pfeil für sich konfigurieren kann.

echo <a href='./vorgaenge.php?sort=".$FM->addSortParameter("P_Schluessel","asc")."'><img src='./pics/pointer_top.gif' border='0'></img>

Ich hoffe ihr versteht ungefähr was ihc machen will.


Daniel
daniel_php
 
Beiträge: 11
Registriert: Do 18. Mär 2004, 01:00

Antwort

Beitragvon Anonymous » Mo 22. Mär 2004, 10:21

Hinweis: Eintrag wurde aus altem Forum importiert. Ggf. kann es dadurch zu Darstellungsproblemen kommen.

hallo,

Wenn ich da jetzt einfach nur oben angeb $FM->addSortParameter("Feld","asc"), weiß ich nicht welches Feld ich eintragen muss weil das ja von Pfeil zu Pfeil (der halt mein Link zum sortieren ist) anders ist.

das feld kommt ja von der Parameterliste im Browser ($_REQUEST['feldname']) -> das ist dann immer das aktuellste...

Das ich in jeden Pfeil-Link den Befehl mit rein geb, weil ich nur so jede Spalte und jeden Pfeil für sich konfigurieren kann.

echo <a href='./vorgaenge.php?sort=".$FM->addSortParameter("P_Schluessel","asc")."'><img src='./pics/pointer_top.gif' border='0'></img>

wie gesagt, so ist das NICHT MÖGLICH.

1) du schreibst dir die Spaltenüberschriften zB
<./index.php?sortierfeld=spaltenfeld1&sortierfolge=asc>Pfeil rauf
<./index.php?sortierfeld=spaltenfeld1&sortierfolge=desc>Pfeil runter
<./index.php?sortierfeld=spaltenfeld2&sortierfolge=asc>Pfeil rauf
<./index.php?sortierfeld=spaltenfeld2&sortierfolge=desc>Pfeil runter
siehst du, was ich meine?
2) du baust dir in deine Datei das ganze mit einem else&elseif oder einem switch ein:
if ( $_REQUEST['sortierfolge'] == "asc" ) {
$sortierfolge = "asc";
} else {
$sortierfolge = "desc";
}
$Instance->addSortParameter($_REQUEST['sortierfeld, $sortierfolge);

verstehst du, wie ich es im Prinzip meine?
Übrigens: auch die FEldnamen, die übergeben werden, sollte man auch mit einem elseif oder so zuweisen, da man ja sonst IRGENDEIN Feld übergeben kann -> Sicherheit... gerade im Hinblick auf andere Programme (hier ist es wahrscheinlich nicht so schlimm)

ciao,
stefan
Anonymous
 

Antwort

Beitragvon daniel_php » Mo 22. Mär 2004, 12:22

Hinweis: Eintrag wurde aus altem Forum importiert. Ggf. kann es dadurch zu Darstellungsproblemen kommen.

hallo,

zitat:
$Instance->addSortParameter($_REQUEST['sortierfeld, $sortierfolge);

Ähm ne frage, warum hast du da Instance davor gemacht?


Die allgemeinen Befehle werden ja immer so angegeben:
void function addSortParameter($fieldname, [$sortorder = "ascend"])

Da wäre meine Frage was dieses void function bedeutet. Das ist mir noch nicht ganz klar was ich vor diese Befehler machen muss. Bei den meisten Befehlen ist ja $FM-> davor.

Bei dem jetzt gibt es mit $Instance nen Fehler.


Daniel
daniel_php
 
Beiträge: 11
Registriert: Do 18. Mär 2004, 01:00

Antwort

Beitragvon schube » Mo 22. Mär 2004, 13:51

Hinweis: Eintrag wurde aus altem Forum importiert. Ggf. kann es dadurch zu Darstellungsproblemen kommen.
Nachrichtensymbol: Bild

HI!


Wenn Du schreibst

$mein_name = new FM_AND_PHP();
dann verwendest Du
$mein_name->blabla();

oder
$FM = new FM_AND_PHP();
$FM->irgendeinefunktion();

oder halt $instance - was ein allgemeiner Name ist.


"void" bedeutet, dass es keinen Rückgabewert gibt.

getFoundCount liefert zB INTEGER zurück, addSortParameter liefert NICHTs, also "void" zurück. Das ist damit gemeint.

"function" heisst, dass es eine Funktion ist.

Ich schlage vor Du holst Dir von Amazon mal eine PHP Anfänger Buch wo auch das Thema Objektorientierte Programmierung kurz angeschnitten wird.


Ciao,
Bernhard
Dipl-Ing. (FH) Bernhard Schulz,
Geschäftsführer von http://www.schubec.com
Leiter des FileMakerProfis-Team
FileMaker Schulungen unter http://www.fm-training.info
Benutzeravatar
schube
Administrator
 
Beiträge: 2324
Registriert: Mi 7. Jul 2010, 15:59
Wohnort: Salzburg, Österreich

Antwort

Beitragvon daniel_php » Mi 24. Mär 2004, 11:03

Hinweis: Eintrag wurde aus altem Forum importiert. Ggf. kann es dadurch zu Darstellungsproblemen kommen.

Hi

zu Hephaistos:

1) du schreibst dir die Spaltenüberschriften zB
<./index.php?sortierfeld=spaltenfeld1&sortierfolge=asc>Pfeil rauf
..
siehst du, was ich meine?
2) du baust dir in deine Datei das ganze mit einem else&elseif oder einem switch ein:
if ( $_REQUEST['sortierfolge'] == "asc" ) {
$sortierfolge = "asc";
} else {
$sortierfolge = "desc";
}
$Instance->addSortParameter($_REQUEST['sortierfeld, $sortierfolge);

_______________________________

Jo hab alles so weit (glaube ich) kapiert, hab das script eingebaut, kam auch keine Fehlermeldung aber sortiert hat er leider auch net.

Was ich mich gerade frage ich klick jetzt den Pfeil an, dann wird dem browser ja eigentlich nur in die Adresse übergeben wie das feld heißt und wie die reihenfolge ist. Aber woher weiß mein Browser das er sortieren soll? o_O

Bei editieren z.b ruf ich ja eine neue Datei auf, aber wenn ich nur irgendwoe in meiner index.php diesen addsortparameter befehl hab weiß der junge doch gar nicht wann er den verwenden soll, oder?

und zu der else&if schleife:

if ( $_REQUEST['sortierfeld'] == "Datum" ) {
$FM->addSortParameter(Datum,$sortierfolge);
} else {
echo "blubb";
}


if ( $_REQUEST['sortierfeld'] == "wer" ) {
$sortfeld = "wer";
} else {
echo "möp";
}
$FM->addSortParameter($sortfeld,$sortierfolge);


was ist da weniger falsch, an richtig will ich ja gar nicht mehr denken.


Daniel
daniel_php
 
Beiträge: 11
Registriert: Do 18. Mär 2004, 01:00

Antwort

Beitragvon Anonymous » Mi 24. Mär 2004, 19:49

Hinweis: Eintrag wurde aus altem Forum importiert. Ggf. kann es dadurch zu Darstellungsproblemen kommen.

hallo,

Was ich mich gerade frage ich klick jetzt den Pfeil an, dann wird dem browser ja eigentlich nur in die Adresse übergeben wie das feld heißt und wie die reihenfolge ist. Aber woher weiß mein Browser das er sortieren soll? o_O

sortieren tut ja nicht dein browser, sondern das PHP Script in FM!

vielleicht postest du mal die dateien, dann mach ich dir das und lads wieder hoch - so haben alle was davon :-)

ciao,
stefan
Anonymous
 

Antwort

Beitragvon daniel_php » Mo 29. Mär 2004, 16:31

Hinweis: Eintrag wurde aus altem Forum importiert. Ggf. kann es dadurch zu Darstellungsproblemen kommen.
Angehängte Datei: http://www.filemakerprofis.de/forumupload/20040329_163120_907.zip

Hi

so tut mir leid, das es so lang gedauert hat, aber hatte letzte Woche keine Zeit mehr.

Hab die Hauptdatein mal angehängt, eigentlich sind es ein paar mehr datein, die sachen wie editieren oder so gehen jetzt halt nicht. aber es geht ja um die Hauptseite und ums Sortieren.

Ich bedank mich schonma dafür das ihr mir dieses Problem löst!!!


Daniel
daniel_php
 
Beiträge: 11
Registriert: Do 18. Mär 2004, 01:00

Antwort

Beitragvon Anonymous » Mo 29. Mär 2004, 16:56

Hinweis: Eintrag wurde aus altem Forum importiert. Ggf. kann es dadurch zu Darstellungsproblemen kommen.
Angehängte Datei: http://www.filemakerprofis.de/forumupload/20040329_165610_162.zip

hallo,

sortieren ist drinnen:
1) bitte gewöhne dir ein wenig Formatierung deines Codes an (Einrückungen etc)
2) schaus dir einfach mal an, das ist EINE möglichkeit wie man es machen könnte.

hab teilweise kommentare dazugeschrieben.

ciao,
stefan
Anonymous
 

Antwort

Beitragvon daniel_php » Mo 5. Apr 2004, 17:24

Hinweis: Eintrag wurde aus altem Forum importiert. Ggf. kann es dadurch zu Darstellungsproblemen kommen.

Hi,

etwas verspätet aber trotzdem wollte ich mich noch einmal bedanken.
funktioniert super mit dem sortieren.

Vielen Dank!!!!



mfg Daniel
daniel_php
 
Beiträge: 11
Registriert: Do 18. Mär 2004, 01:00


Zurück zu FM-and-PHP

cron