Deutschsprachiges NOF - Forum

Support und Tutorials rund um das Thema NetObjects Fusion

collapse

* Alles hat ein Ende...

April 2017

Eine Weisheit der Dakota-Indianer sagt:
"Wenn Du entdeckst, dass Du ein totes Pferd reitest, steig ab!"

Vor fast fünf Jahren habe ich die NOF-Community gegründet und nachdem just zu diesem Zeitpunkt das „alte NOF-Forum“ quasi über Nacht vom Betreiber geschlossen wurde, war mein Forum für viele Nutzer von NetObjects Fusion eine willkommene Alternative.

Inzwischen sind weit über 5000 NetObjects-Nutzer in der NOF-Community registriert und täglich kommen weitere hinzu. An interessierten Mitgliedern fehlt es also nicht. Was aber fehlt, sind Mitglieder, die Lust haben, anderen Nutzern bei der Lösung ihrer vielfältigen Probleme in der Anwendung von NetObjects Fusion zu helfen. Vielleicht, weil viele von ihnen - ebenso wie ich - das Interesse an NOF verloren haben und zwischenzeitlich mit anderen Programmen arbeiten.

Aktuell ist es so, dass der Support wie die Kosten für den Betrieb der NOF-Community fast ausschließlich von mir übernommen werden. Dies, und die Tatsache, dass ich die Arbeit mit NetObjects Fusion nicht mehr für zeitgemäß halte, veranlasst mich, den aktiven Forenbetrieb zu beenden. Die Beiträge, Tipps und Anleitungen aus den letzten Jahren stehen ab heute nur noch als Nachschlagewerk zur Verfügung.

Ich bedanke mich an dieser Stelle ganz herzlich bei allen, die mich und die NOF-Community in den vergangenen Jahren unterstützt haben.

Beste Grüße nettesekel

Die letzten Beiträge

Absturz bei FTP Publizierung
von nettesekel
16. April 2017, 12:51:56

E-Masil Adresse herausfinden
von nettesekel
11. April 2017, 16:16:20

Keine Neuinstallation möglich
von nettesekel
10. April 2017, 16:00:27

Publizieren geht nicht
von musikavokale
09. April 2017, 23:15:50

NOF 15
von nettesekel
04. April 2017, 23:55:26

Feststehender Seitenbereich
von nettesekel
01. April 2017, 17:37:12

Aufklappbare Navigation
von nettesekel
31. März 2017, 12:50:30

Nov 12 zum hare ausreisen
von Jim Panse
26. März 2017, 11:48:03

Lytebox Dateiablage
von fahrzeugseiten
21. März 2017, 23:23:23

* Schatznasen Feed

* Aquablogger Feed

* Strickzeugs Feed

* Links für Katzenfreunde

* ...

Fachanwalt für Internet-Recht C.Schmietenknop

* Friendship

DER Katzenblog – mit tollen Tipps und Ideen für deine Katze(n) <3

Autor Thema: NOF PHP Datenbank Einträge nachrücken  (Gelesen 24665 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline andy2332

  • Community Mitglied
  • ***
  • Beiträge: 173
NOF PHP Datenbank Einträge nachrücken
« am: 24. August 2014, 09:39:14 »
Hallo ihr Lieben ;)

Habe eine Datenbank und eine PHP Seite die darauf zugreift. Momentan werden die Ergebnisse zufällig ausgegeben. Wie die Listung per Deld funktioniert weis ich.- Jedoch möchte ich gern die Ergebnisse so ausgeben:

Besucher 1 sieht Einträge:

1 2 3 4 5 6 7 8

Besucher 2 sieht Einträge:

8 1 2 3 4 5 6 7

Besucher 3 sieht Einträge:

7 8 1 2 3 4 5 6

Also, daß bei jedem neuen Besucher der jeweilig letzte Eintrag nach oben rutscht. Quasi wie ein Karussell.

Im Vorraus vielen Dank für euer Kopfzerbrechen :)

Habt einen schönen Sonntag!

Hans K.

  • Gast
Re: NOF PHP Datenbank Einträge nachrücken
« Antwort #1 am: 24. August 2014, 18:07:36 »
Ich musste erst überlegen, wie man das am Besten hinbekommt, aber es geht.   ;-)
Ist halt ein wenig Tricky:

Du hängst Deiner Tabelle eine weitere Spalte an, welche eine Zahl beinhaltet. Diese Zahl muss für jeden Datensatz eindeutig sein, beginnend ab 1.
(am Besten in der Reihenfolge, in welcher Du die Datensätze anzeigen lassen möchtest)

Als Nächstes änderst Du die Abfrage:
Aus
Code: PHP
  1. $sql="SELECT ID, Ueberschrift, Text, Ort, Link FROM Fewos ORDER BY RAND()";

machst Du
Code: PHP
  1. $sql="SELECT ID, Ueberschrift, Text, Ort, Link FROM Fewos ORDER BY FELDNAME ASC";
Wobei FELDNAME das oben neu hinzugefügte Feld ist.

Jetzt kommt der Trick:

Unter Beginn der Seite fügst Du folgenden Code ein:

Code: PHP
  1. <?php
  2.  
  3. $abfrage = "SELECT id FROM Fewos";
  4. $ergebnis = mysql_query($abfrage);
  5. $menge = mysql_num_rows($ergebnis);
  6.  
  7. $zähler = "UPDATE Fewos SET FELDNAME = Counter+1";
  8. $aendern = mysql_query($zähler);
  9.  
  10. $uberlauf = "SELECT id FROM Fewos WHERE FELDNAME > $menge";
  11. $neusetzen = mysql_query($uberlauf);
  12. $neueeins= "UPDATE Fewos SET FELDNAME = '1' WHERE ID = $neusetzen";
  13. $gesetzt = mysql_query($neueeins);
  14.  
  15. ?>

Was passiert hier?
Im ersten Block wird ermittelt, wie viele Datensätze vorhanden sind.
Im zweiten Block wird jedes Feld mit dem FELDNAME um 1 erhöht.
Im dritten Block wird der Datensatz ermittelt, der aufgrund der Erhöhung nun über der Anzahl der Datensätze liegt und auf 1 gesetzt.
(Aufgrund der Erhöhung gibt es ja keine 1 mehr, deshalb wird sie neu gesetzt)

Somit ist der letzte Eintrag nun der Erste... und jeder Besuch der Seite löst die Erhöhung aus.

PS: Alles ungetestet und aus dem Kopf heraus.

Gruß
Hans

Offline andy2332

  • Community Mitglied
  • ***
  • Beiträge: 173
Re: NOF PHP Datenbank Einträge nachrücken
« Antwort #2 am: 24. August 2014, 20:18:08 »
Hallo Hans

Das funktioniert leider nicht. Ich mache das ja mit der PHP Komponente von NOF. Weiterhin sind die Daten schon selektiert nach einem Kriterium. Es werden zum Beispiel auf der Seite Trassenheide nur die Unterkünfte ausgegeben die als Ort Trassenheide haben.

Ich kann bei den Eigenschaften nur das hier ändern
$sql="SELECT ID, Ueberschrift, Text, Ort, Link FROM Fewos ORDER BY RAND()";
wobei dies im Feld steht wo ich was ändern kann:
SELECT ID, Ueberschrift, Text, Ort, Link FROM Fewos ORDER BY RAND()
Den Rest fügt NOF selbst hinzu.

Ich denke da kannst du sicher kaum was machen oder?

Hans K.

  • Gast
Re: NOF PHP Datenbank Einträge nachrücken
« Antwort #3 am: 24. August 2014, 20:30:31 »
Also als Erstes würde ich die PHP-Komponente rausschmeißen. Sie ist einfach nicht flexibel genug.  ;-)

Unabhängig davon kannst Du auch zwei Bedingungen angeben... aber es geht ja einzig um die RAND Funktion. Genau diese ist wie beschrieben zu ersetzen.

Der Code mit den Aktualisierungen funktioniert natürlich "nur", wenn die Datenbankverbindung steht. Probehalber kannst Du versuchen, den Code auch am Ende der Seite einzufügen...

Was genau bedeutet "funktioniert nicht"?

Gruß
Hans

Offline andy2332

  • Community Mitglied
  • ***
  • Beiträge: 173
Re: NOF PHP Datenbank Einträge nachrücken
« Antwort #4 am: 25. August 2014, 18:02:42 »
Wenn ich die PHP Komponente rauswerfe, dann funktioniert garnichts mehr. logischerweise.. Ich mache das halt auf Sicht und greife so gut wie nicht in den Quellcode ein weil mir das alles zu viel ist.

Es funktioniert nicht heisst, daß die Seite über 10 Fehlermeldungen ausgibt

Hans K.

  • Gast
Re: NOF PHP Datenbank Einträge nachrücken
« Antwort #5 am: 25. August 2014, 20:12:39 »
Mit Hilfe der Fehlermeldungen könnte man natürlich schauen, warum die Funktion nicht gegeben ist. Wie lauten diese?

Offline andy2332

  • Community Mitglied
  • ***
  • Beiträge: 173
Re: NOF PHP Datenbank Einträge nachrücken
« Antwort #6 am: 26. August 2014, 11:39:19 »

Hans K.

  • Gast
Re: NOF PHP Datenbank Einträge nachrücken
« Antwort #7 am: 26. August 2014, 16:34:30 »
Die Verbindung zur Datenbank steht nicht...

Wie schon geschrieben, ich würde mich von der PHP-Komponente trennen. ;)
Da ich die Komponente nicht kenne, kann ich nur Vermuten. Kannst Du den von mir geposteten Code in der Komponente mit einfügen?
(z.B. vor dem Select)

Ich schaue mir mal die Komponente heute abend an...

Offline andy2332

  • Community Mitglied
  • ***
  • Beiträge: 173
Re: NOF PHP Datenbank Einträge nachrücken
« Antwort #8 am: 26. August 2014, 17:05:00 »
Wenn ich mich von der PHP Kompüonente trenne muss ich alles in PHP selbst schreiben was für mich nicht machbar ist!

So nun schau noch mal. Nun ist alles soweit zu sehen und darüber auch noch die Fehlermeldungen. Ich habe anstatt FELDNAME nun die ID als Feldwert angegeben. Problem hier: Es sind nicht Unterkunft 1 - 10 zu sehen sondern z.B. nur 2, 6, 12, 16. Also nicht fortlaufend sondern nur die die unter Ort = Trassenheide laufen.

Hans K.

  • Gast
Re: NOF PHP Datenbank Einträge nachrücken
« Antwort #9 am: 26. August 2014, 20:35:49 »
So nun schau noch mal. Nun ist alles soweit zu sehen und darüber auch noch die Fehlermeldungen. Ich habe anstatt FELDNAME nun die ID als Feldwert angegeben.
Was natürlich fatal ist, wenn die IDs per update sich hochzählen. Eine ID sollte eineindeutig sein und nicht verändert werden.

Problem hier: Es sind nicht Unterkunft 1 - 10 zu sehen sondern z.B. nur 2, 6, 12, 16. Also nicht fortlaufend sondern nur die die unter Ort = Trassenheide laufen.

Wie lautet denn Deine Abfrage?
(deshalb sollte das über ein neues Feld sein, da damit auch eingeschränkte Ergebnisse geliefert werden können)

Sollen denn nur die Datensätze angezeigt werden, welche in Trassenheide sind?

Offline andy2332

  • Community Mitglied
  • ***
  • Beiträge: 173
Re: NOF PHP Datenbank Einträge nachrücken
« Antwort #10 am: 27. August 2014, 10:16:51 »
Die IDs sind eindeutig, jedoch sollen auf den jeweiligen Seiten nur bestimmte Unterkünfte angezeigt werden.

Trassenheide: alle Unterkünfte in Trassenheide
hier also ID 68, 125, 165 und 167

Die Einschränkung findet sich hier nach Ort, also das Feld ist Ort. also zeige alles was als Ort "Trassenheide " hast.

So funktioniert das. Und wie soll ich da noch ein weiteres Feld angeben? ich versteh das gerade nicht.

Offline andy2332

  • Community Mitglied
  • ***
  • Beiträge: 173
Re: NOF PHP Datenbank Einträge nachrücken
« Antwort #11 am: 27. August 2014, 10:27:21 »
Der Befehl ist folgender:

SELECT * FROM Fewos WHERE Ort = 'Seebad Trassenheide' ORDER BY RAND ()

Aber mal alles zurück.

Ist es auch möglich die Unterkünfte so anzeigen zu lassen, daß die Reihenfolge sich einmal pro Woche ändert? Geht das auch?

Also
ID 1, 2, 3, 4

nach 7 Tagen
ID 4, 1, 2, 3

nach weiteren 7 Tagen
ID 3, 4, 1, 2

und so weiter?

Das wäre noch besser, denn manche Leute schauen am nächsten Tag noch mal in die Seite und finden bei der zufälligen Anordnung oft die Unterkunft nicht mehr.

Hans K.

  • Gast
Re: NOF PHP Datenbank Einträge nachrücken
« Antwort #12 am: 27. August 2014, 14:24:27 »
Wie ich schon geschrieben habe, ist in der Abfrage das RAND zu ersetzen:

Code: PHP
  1. $sql="SELECT * FROM Fewos WHERE Ort = 'Seebad Trassenheide' ORDER BY FELDNAME ASC";

Da es auf den Ort beschränkt werden soll, muss das Script natürlich entsprechend angepasst werden:
Code: PHP
  1. <?php
  2.  
  3. $abfrage = "SELECT id FROM Fewos WHERE Ort = 'Seebad Trassenheide'";
  4. $ergebnis = mysql_query($abfrage);
  5. $menge = mysql_num_rows($ergebnis);
  6.  
  7. $zähler = "UPDATE Fewos SET FELDNAME = Counter+1 WHERE Ort = 'Seebad Trassenheide'";
  8. $aendern = mysql_query($zähler);
  9.  
  10. $uberlauf = "SELECT id FROM Fewos WHERE FELDNAME > $menge";
  11. $neusetzen = mysql_query($uberlauf);
  12. $neueeins= "UPDATE Fewos SET FELDNAME = '1' WHERE ID = $neusetzen";
  13. $gesetzt = mysql_query($neueeins);
  14.  
  15. ?>

Zu Deiner zweiten Frage: Ja, auch nach 7 Tagen kann man den Ablauf so gestalten, allerdings wird das Thema dadurch noch komplexer.

Offline andy2332

  • Community Mitglied
  • ***
  • Beiträge: 173
Re: NOF PHP Datenbank Einträge nachrücken
« Antwort #13 am: 27. August 2014, 19:57:10 »
Sehe ich das richtig, daß ich anstatt Feldname das Feld ID nehmen muss?

Offline andy2332

  • Community Mitglied
  • ***
  • Beiträge: 173
Re: NOF PHP Datenbank Einträge nachrücken
« Antwort #14 am: 27. August 2014, 20:09:05 »
ja alles so eingegeben wie du gescvhrieben hast aber leider immer noch die selben Fehlermeldungen. Erstmal müsste ich wissen wie ich das da bei NOF in die Datenbankkomponente eingeben kann, dann wäre ich nämlich schon schlauer.

Wenn es nicht geht oder du keinenRat hast und ich alles von Hand in PHP umstellen müsste, also ohne die NOF Komponente, dann endet hier auch schon mein Wunsch nach Hilfe, denn das kann ich nicht, da ich null Ahnung habe von PHP und das zu viel Arbeit für mich wäre.

Deutschsprachiges NOF - Forum

Support und Tutorials rund um das Thema NetObjects Fusion