SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Handbuch der Java-Programmierung

Handbuch der Java-Programmierung zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > Off Topic Area

Off Topic Area Hierein gehört alles, was nichts mit PHP, MySQL, Apache oder ähnlichem zu tun hat

Antwort
 
Themen-Optionen Ansicht
  #21  
Alt 26.08.2004, 10:21:28
c4 c4 ist offline
SELFPHP Guru
 
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
3 Tabellen, Taucher?? Nee, Du! Da ich es bevorzuge die Seite selber nicht in der Datenbank zu speichern, sondern traditionell als .php, ist doch nur eine einzige notwendig. Oder übersehe ich bei dem Thema schon wieder etwas essentielles?
__________________
sic!
--> http://dbCF.de/
Mit Zitat antworten
  #22  
Alt 26.08.2004, 10:25:42
diver-network diver-network ist offline
Junior Member
 
Registriert seit: Apr 2003
Ort: TÜ
Beiträge: 337
Hi c4,

in diesem Fall übersiehst Du wirklich was ;-)

Sagen wir mal, Du hast die Seiten "index.php" und "weiter.php". Auf beiden Seiten kommt der Text "Wilkommen bei Self..." vor. Um diesen Text nicht für jede Seite übersetzen zu müssen speicherst Du diesen in der Tabelle "texte" ab. In der Tabelle "seiten" steht dann drin "index.php" und "weiter.php". Über die Zwischentabelle wird anschließend die Verbindung zwischen den Seiten und dem Text hergestellt.

HTH,

Andy
Mit Zitat antworten
  #23  
Alt 26.08.2004, 10:28:19
c4 c4 ist offline
SELFPHP Guru
 
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
Sagen wir mal, in der Tabelle hat der Text 'Hallo Welt' die ID 0815. Was spricht denn dagegen auf beiden Seiten (index.php und weiter.php) auf die ID 0815 zuzugreifen??
Ich werde doch auch nicht für jeden 'Senden'-Button auf jeder Seite einen neuen Eintrag hinzufügen!
__________________
sic!
--> http://dbCF.de/
Mit Zitat antworten
  #24  
Alt 26.08.2004, 10:55:22
Caddata Caddata ist offline
Anfänger
 
Registriert seit: Apr 2004
Beiträge: 13
Ich glaube, das diese Datenbank-Geschichte, zumindest bei höheren Besucherzahlen ziemlichen Overhead erzeugen würde.
__________________
If you want to learn it, teach it!
http://www.pear-forum.de
Mit Zitat antworten
  #25  
Alt 26.08.2004, 11:01:10
c4 c4 ist offline
SELFPHP Guru
 
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
Zitat:
Original geschrieben von Caddata
Ich glaube, das diese Datenbank-Geschichte, zumindest bei höheren Besucherzahlen ziemlichen Overhead erzeugen würde.
Meinst Du etwa, dass Dateizugriffe besser wären? Ich erlaube mir, dies zu bezweifeln!
__________________
sic!
--> http://dbCF.de/
Mit Zitat antworten
  #26  
Alt 26.08.2004, 11:14:25
diver-network diver-network ist offline
Junior Member
 
Registriert seit: Apr 2003
Ort: TÜ
Beiträge: 337
Hi c4,

zu Deiner Frage:

Bist Du sicher, daß Du immer die ID des entsprechenden Datensatzes (=Text) kennst, wenn Du ihn in Deiner Seite benötigst? Falls ja reicht eine Tabelle natürlich aus, falls nein benötigst Du drei Tabellen.

Vorteil Deiner Methode:
- Du weißt genau, welchen Datensatz Du benötigst

Nachteile:
- Was machst Du, wenn Du einen neuen Text einfügen willst, dessen ID Du nicht kennst?
- Was passiert, wenn Dir der Text "Hallo Welt" auf der Seite 1 nicht mehr gefällt, Du ihn auf der Seite 2 aber noch benötigst? Jetzt mußt Du händisch in den Quellcode von Seite 1 eingreifen, um dort die ID auf diejenige des neuen Textes zu ändern.

Mein Vorschlag:
Speichere Dir in der Zwischentabelle die Position des Textes auf der jeweiligen Seite, z.B. als Absatz10, Absatz20,... ("10" bzw. "20" sind Absicht, so kannst Du einfacher Texe dazwischen stellen, ohne Dein SQL anpassen zu müssen, sofern Du dort ein ORDER BY "Position" stehen hast).

In Deiner PHP- Seite hast Du dann als Variablen für den Text $Absatz10, $Absatz20 etc. drin stehen. Es wird zwar etwas unübersichtlich, wenn Du zwischen Absatz10 und Absatz20 einen neuen Text benötigst, da dann eventuell die "logische" Reihenfolge der Variablen nicht mehr eingehalten ist, es ist aber immer noch sehr einfach zu pflegen.


HTH,

Andy
Mit Zitat antworten
  #27  
Alt 26.08.2004, 11:23:55
c4 c4 ist offline
SELFPHP Guru
 
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
Also an dem eine-Tabellen-Prinzip werde ich mal nicht rütteln.

Zum Thema Eintrag finden:
Zitat:
Original geschrieben von Gweilo
Was duch machen kannst, wenn du texte rasch nachschauen musst, um die id herauszufinden, einfach eine datei im editor offen halten mit einem Dump der datenbank (nur eine sprache).
Dem schließe ich mich an. Daraus werde ich mal kein Problem machen.

Eine Idee, die mir gerade gekommen ist und eigentlich von der Performance her am idealsten sein sollte: Texte werden wie bisher 'erarbeitet' in MySQL gespeichert (id, text_de, text_en, ...) Nach jeder Änderung der Texte, führt man nun ein Skript aus, welches die Textbausteine in extra PHP-Dateien speichert. Ungefähres Format:
PHP-Code:
// text_de.php
<?php
$text_module
[0]='Auto';
$text_module[1]='Bus';
// ...
?>

// text_en.php
<?php
$text_module
[0]='car';
$text_module[1]='bus';
// ...
?>
Diese include()t man einfach und schon stehen alle Texte zur Verfügung. Das erspart mir beim Schreiben von Texten sehr viel Arbeit.
Damit habe ich pro Seitenaufruf eine DB-Abfrage weniger und schneller dürfte es auch gehen.

Außerdem kann man diese Dateien einfach weitergeben, damit sie jemand übersetzen kann. Eingefügt ist das in MySQL auch schnell.

Ist doch keine schlechte Idee, oder?


Edit:
edit:
Warum dann überhaupt noch MySQL?? Wartungsfreundlicher, okay. Und sonst?
__________________
sic!
--> http://dbCF.de/

Geändert von ­c­4­ (26.08.2004 um 11:28:22 Uhr)
Mit Zitat antworten
  #28  
Alt 26.08.2004, 11:56:39
diver-network diver-network ist offline
Junior Member
 
Registriert seit: Apr 2003
Ort: TÜ
Beiträge: 337
Hi c4,

so geht es natürlich auch. Hätte ich auch selber drauf kommen können ;-)
Allerdings bekommst Du so für jede php- Seite zusätzlich noch eine php- include Datei.
Sprich: Kein Licht ohne Schatten ;-)

Um mal zum Schluß zu kommen nehme ich für mich jetzt mal mit, daß es für relativ wenige (neue) Seiten (pro Tag/Monat) vermutlich einfacher ist, Deinen Weg zu gehen, bei vielen Änderungen aber vermutlich mein Weg besser ist.

In jedem Fall ist es egal, welche Methode Du für den Anfang wählst. Wenn Du merkst, daß eventuell die Andere besser ist kannst Du jederzeit ohne (größere) Probleme umsteigen.

Obwohl: STOPP!

Du benötigst so für jede Seite eine eigene SELECT Abfrage im Stil von SELECT ... FROM texte WHERE id IN (1,0815,...).

Bei meiner Lösung müsste, wenn ich mich nicht täusche, eine reichen, der Du als Variable den Seitennamen angibst, um sämtliche Texte für die Seite zu bekommen. Also: SELECT ... FROM texte AS tx INNER JOIN zw ON zw.text_id = tx.text_id INNER JOIN seiten AS s ON zw.s_id = s.s_id WHERE seitenname LIKE '$seitenname' (PSEUDOCODE, UNGETESTET!!).

Ich gebe zu, ich bin stur und von meiner Lösung überzeugt, allerdings wäre eventuell eine Kombination aus Deiner und meiner Lösung am Besten zwecks Performance. Sprich: Nach jeder Textänderung (zu einer Seite) wird eine neue include- Datei (für diese Seite) generiert.

Welche Vorschläge haben denn Andere??

Gruß,

Andy
Mit Zitat antworten
  #29  
Alt 26.08.2004, 12:59:12
c4 c4 ist offline
SELFPHP Guru
 
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
hm... also die Idee mit der Kombination klingt auch gut... Nur: Ich arbeite nicht mit unterschiedlichen Dateinamen, sondern mit topics, die via Link übergeben werden. Die Auswertung erfolgt ohne MySQL. Etwas, was ich auch nicht ändern will. Diese Daten dann auch noch in einer Datenbank zu speichern.

Also Ideen, Widersprüche und Probleme habe ich jetzt erst einmal genügend. Ich schlafe da einfach mal ein paar Tage drüber und werde dann mal schauen, was sich für mich als am besten/bequemsten erweisen könnte. Werde dann Bescheid geben.
Weitere Kommentare sind natürlich weiterhin willkommen!

Übrigens: Danke für den schönen Thread, gefällt mir. :)
__________________
sic!
--> http://dbCF.de/
Mit Zitat antworten
  #30  
Alt 26.08.2004, 13:58:50
diver-network diver-network ist offline
Junior Member
 
Registriert seit: Apr 2003
Ort: TÜ
Beiträge: 337
Hi,

wie schon oft in diesem Forum gesagt gibt es meistens mehrere Wege, zum Ziel zu kommen.
Ich werd' auch noch mal drüber schlafen und schauen, ob mir noch was weiteres einfällt.

Mir gefällt der Thread auch, vor allem, da ich dadurch natürlich auch einiges lernen kann. Schade ist halt, daß es gerade wenig Kommentare von Anderen gibt.

Na ja, bis demnächst...

Andy

P.S.: Wenn es um die Übersetzung ins / aus dem Englischen geht kann ich eventuell auch helfen.
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 10:11:21 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt