-
23.11.10 17:44 #16
- Registriert seit
- Sep 2004
- Ort
- Möglingen (BaWü)
- Beiträge
- 3.109
Das ist richtig das du den Code verlierst (sofern nach 5 Minuten Abwesenheit die Sperre automatisch aufgehoben wird). Hier die richtige Zeitspanne zu finden dürfte schwer werden, aber es muss ja irgendwann eine Freigabe erfolgen.
Angenommen du beginnst morgens um 9.00 Uhr mit der Änderung und dann kommt ein dringender Anruf. Du verlässt die Wohnung (aber der PC bleibt an) und kommst erst abends um 22.00 Uhr wieder zurück. So lange könnte dann keiner was ändern!
Wenn du jetzt weitermachen würdest, dann würde ich eine Fehlermeldung anzeigen "Achtung der Vorgang wurde wegen Zeitüberschreitung abgebrochen."
Dann würde ich die jetzt aktuellen Daten anzeigen und zusätzlich aber auch das was von dir bearbeitet wurde.
Nachdem du bestätigt hast das du deine Änderungen nun immer noch speichern willst, bekommst du Zugriff (vorausgesetzt jetzt ist lock = 0).Sollte ein Tipp von mir geholfen haben, habe ich nichts gegen eine entsprechende Bewertung oder ein Danke und wenn ein Problem gelöst ist, dann den Beitrag bitte auch als erledigt markieren.
Was ich gar nicht leiden kann sind User die es nicht für nötig halten auf Antworten zu reagieren, die Themen nicht als erledigt markieren und/oder die sich nicht für Hilfe bedanken.
-
23.11.10 17:47 #17
Was ist mit der Lösung zum manuellen Freigeben? Das erfordert doch zu viel Aufwand?!
Man könnte es natürlich so machen, dass die Änderungen einfach übernommen werden (inkl. Wortfilter). Aber es kann dann jeder irgendwas reinschreiben...mfg ComFreek
Falls ich dir geholfen habe, würde ich mich über ein DANKE freuen!
Kenn mich am besten aus in C++, WEB-Sprachen (PHP, HTML, JavaScript) und vllt. mehr
[PHP] Überprüfen, ob Website erreichbar • Sicherheit in PHP-Codes schaffen • Google Chrome-Extension für tutorials.de • json_compress()
-
23.11.10 19:42 #18
- Registriert seit
- Nov 2010
- Beiträge
- 56
Mist, jetzt hab ich meinen Text gelöscht.....
Ohne jetzt tiefer in die Materie eingestiegen zu sein (meine Nacht war nur 2 Stunden lang) würde ich rein vom Bauch her sagen: Geht so nicht (nicht vom Code sondern von der "Abwicklung"). Ich habe mir mal eben subversion angeschaut und wenn ich sehe, aus wieviel Modulen das Teil besteht, dann würde ich erstmal sagen "Das in PHP und MySQL? Unmöglich." Jedenfalls aus meiner Sicht erstmal nicht ohne klare Vorgaben. 5 Minuten reichen definitiv nicht, um sich in den (veränderten) Code einzuarbeiten. Entweder sperre ich den Code erheblich länger (z.B. 2 Stunden; müsste man Erfahrungswerte sammeln), bis er ausgelogged wird bzw. früher, wenn die (neue) Version abgespeichert wird. Allerdings müsste die Sperre dann solange andauern, bis die neue Version auch freigeschaltet wird.
Klar können die im Team arbeiten, aber wie schon geschrieben wurde, wenn alles auch entsprechend strukturiert ist. Und da würde ich mal mutmaßen, dass dann eher modular programmiert wird, d.h., jeder kümmert sich nur um einen bestimmten Teil. Subversion bietet u.a. auch File Locking, Merge tracking und testen auf executable an. Das kann PHP alleine gar nicht leisten. Evtl. gäb's vielleicht 'ne Ajax-Lösung, die permanent "kontrolliert" und (z.B. alle 30 Sek.) anzeigt, was "die anderen" gerade tun. Was ich mir kompliziert vorstelle, wäre der Teil, wo die Bearbeitungsunterschiede gegenüber dem Orginal verglichen werden müssen. Temporäre Datei? Und was dann? Am Ende muss immer einer (oder per Abstimmung) entscheiden, was die Beta, der RC oder die Final ist.
Der meiner Meinung nach gangbarste Weg wäre , die Datei solange zu sperren, wie sie einer bearbeitet und zwischendrin per Refresh-Automatismus in festgelegten Intervallen - z.B. timer=>10 min. prüft, ob inzwischen ein Event (onclick, onkeypress oder was auch immer) ausgelöst wurde. Man kann per Ajax ja sehr gut einen Request an den Server absenden. Ich würde in einer Variablen nicht die absolute Zeit sondern nur die Differenz seit dem letzten event speichern, die PC-Zeit muss ja nicht gleich der Server-Zeit sein. Aber wenn die Differenz beim nächsten Refresh >10 ist, dann wird ausgelogged. Größtes Manko wäre, dass die maximale Verzögerung bei 19:59 min (bei 10min Refresh) liegen kann.
Aber selbst diese eigentlich noch im Verhältnis einfach nachzuvollziehende "Verarbeitungsweise" würde ich mir programmtechnisch erstmal kompliziert vorstellen.
Greetz
cw
-
23.11.10 19:53 #19
Dann kann eben kein anderer das bearbeiten und bei vielen Benutzern ist diese Möglichkeit nicht allzu gut finde ich.
Eigentlich habe ich vor eine Komponente für Joomla zu schreiben, somit ist ein Prommgrammierteil schon weg.
Für mich ist die Idee, dass ein Admin etwas freigibt, immer noch die Beste, denn damit können auch mehrere Versionen eingereicht werden. Aber es ist eben Aufwand.Am Ende muss immer einer (oder per Abstimmung) entscheiden, was die Beta, der RC oder die Final ist.
Oder eben auf das Prinzip der Menge vertrauen, dass keiner was sinnloses darein postet.mfg ComFreek
Falls ich dir geholfen habe, würde ich mich über ein DANKE freuen!
Kenn mich am besten aus in C++, WEB-Sprachen (PHP, HTML, JavaScript) und vllt. mehr
[PHP] Überprüfen, ob Website erreichbar • Sicherheit in PHP-Codes schaffen • Google Chrome-Extension für tutorials.de • json_compress()
-
24.11.10 08:13 #20
- Registriert seit
- Sep 2004
- Ort
- Möglingen (BaWü)
- Beiträge
- 3.109
Also wenn ich mir den Beitrag nochmal von vorne durchlese, dann frag ich mich ob es nicht doch besser ist, die PHP-Skripts als Datei zu speichern.
Du hättest für jeden Beitrag eine Nummer die als Dateiname verwendet wird und könntest dann zusätzlich noch eine Versionsnummer dranhängen.
In der Datenbank selber werden dann z.B. Suchbegriffe, Username und die Freigabe gespeichert.
Wenn du (oder wer auch immer) eine geänderte Datei frei gibst, dann bekommt diese als Versionsnummer eine "0". Jeder Aufruf zum Herunterladen oder zum Bearbeiten greift auf diese Datei zu.
Es könnten so unzählige Änderungen gleichzeitig gemacht werden ohne das etwas überschrieben wird.
Ist nicht leicht hier den richtigen Weg zu finden.
Gruß ThomasSollte ein Tipp von mir geholfen haben, habe ich nichts gegen eine entsprechende Bewertung oder ein Danke und wenn ein Problem gelöst ist, dann den Beitrag bitte auch als erledigt markieren.
Was ich gar nicht leiden kann sind User die es nicht für nötig halten auf Antworten zu reagieren, die Themen nicht als erledigt markieren und/oder die sich nicht für Hilfe bedanken.
-
25.11.10 20:11 #21
Ich dachte ich hätte geantwortet, anscheinend ist sie wohl doch nicht hier gepostet worden...
Ok, ich denke ich werde es in Dateien speichern, alte Versionen vielleicht in eine Datenbank-Tabelle (Engine ARCHIVE).
Das Problem mit den "Zeit-Konflikten" würde ich so lösen (u.a. kombiniert aus euren Vorschlägen):- Nach einer bestimmten Abwesendheits-Zeit wird eine Meldung eingeblendet, falls jmd. anderes den Artikel bearbeitet hat und wird aufgefordert diesen einzusehen oder den momentanen als eine spezielle Version zu speichern.
- Einen Chat integrieren, mit dem evtl. gleichzeitige Bearbeiter sich unterhalten können.
- Mehrere Versionen speichern für bestimmte Bearbeitungen, dann später eine Version, die diese zusammenfässt.
Was haltet Ihr davon?
Das passiert mir auch immer wiederMist, jetzt hab ich meinen Text gelöscht.....
Aber mein Trick ist, dass ich immer kurz Strg+A (alles markieren) und Strg+C (dies kopieren) drücke und somit den Text immer in der Zwischenablage habe. Das mache ich übrigens immer bei längeren Texten z.B. in Word oder in Emails.
PS: Was ist denn jetzt genau der Unterschied zwischen "Danke" und einer positiven Bewertung?
Mir ist aufgefallen, dass man "Danke" immer drücken kann, wohingegen eine Bewertung nur manchmal abgegeben werden kann.mfg ComFreek
Falls ich dir geholfen habe, würde ich mich über ein DANKE freuen!
Kenn mich am besten aus in C++, WEB-Sprachen (PHP, HTML, JavaScript) und vllt. mehr
[PHP] Überprüfen, ob Website erreichbar • Sicherheit in PHP-Codes schaffen • Google Chrome-Extension für tutorials.de • json_compress()
Ähnliche Themen
-
EJB Speichern von Daten
Von macfreakz im Forum Enterprise Java (JEE, J2EE, Spring & Co.)Antworten: 3Letzter Beitrag: 28.04.05, 10:08 -
Wohin speichert die Session die Daten?
Von cmc-one im Forum PHPAntworten: 2Letzter Beitrag: 01.03.05, 15:35 -
********Daten speichern********
Von Teerow im Forum Visual Basic 6.0Antworten: 1Letzter Beitrag: 04.05.04, 23:35 -
daten speichern
Von BinaerPapst im Forum PHPAntworten: 3Letzter Beitrag: 16.06.03, 23:17 -
MX Daten Speichern
Von rayalety im Forum Flash PlattformAntworten: 4Letzter Beitrag: 02.05.03, 14:08



10Danke


Zitieren

Login





