AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Konzeptfrage: Dateien auf einer Website hochladen
Thema durchsuchen
Ansicht
Themen-Optionen

Konzeptfrage: Dateien auf einer Website hochladen

Ein Thema von Matze · begonnen am 12. Apr 2008 · letzter Beitrag vom 12. Apr 2008
Antwort Antwort
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#1

Konzeptfrage: Dateien auf einer Website hochladen

  Alt 12. Apr 2008, 13:35
Hallo,

mein Problem kann man mit einem kurzen Titel nicht vernünftig beschreiben, daher der etwas abgespeckte. *g*

Bei meinem Wiki kann man Dateien hochladen und in Einträgen einbinden. Bisher hatte ich es so umgesetzt, dass nach dem Hochladen der Datei-Hash angezeigt wird und man einen Code dieser Art [file:5cda85e2b35561b98ebc7942075c8c723d4b04d8] einbinden muss, um einen Verweis auf die Datei zu erzeugen. An und für sich ist das ja nicht so schlecht, doch das Problem dabei ist, dass das ganze nicht mehr vernünftig funktioniert, sobald man die Datei aktualisiert. Denn dann müsste man sämtliche Inhalte aktualisieren.

Besser wäre es wohl, die ID mitzugeben ([file:123]), doch da habe ich das Problem, dass ich während des Verfassens noch nicht weiß, welche ID eine hochgeladene Datei haben wird, da ich den Verweis auf diese Datei erst dann in die DB schreibe, wenn ein Beitrag auch wirklich abgesendet wird. Davor ergibt es auch keinen Sinn, denn es kann ja mal sein, dass man einen Beitrag doch nicht absenden möchte (dann habe ich nur eine überflüssige Datei auf dem Server, aber keine überflüssigen Einträge in der Datenbank).
Und eine ID irgendwie zu reservieren wird nicht möglich sein, denn das müsste ich irgendwie mit den Sessions verkuddeln und dann funktioniert das "auto-increment" der Datenbank auch nicht mehr. Das scheidet also schon mal aus.

Wie würdet ihr denn das umsetzen? Ich bin da momentan ein wenig überfragt.

Realisiert ist das alles mit PHP und MySQL.

Grüße

Edit: Vermutlich werde ich den DB-Eintrag dann doch direkt nach dem Hochladen der Datei erstellen. Was anderes fällt mir absolut nicht ein.
  Mit Zitat antworten Zitat
Ghostwalker

Registriert seit: 16. Jun 2003
Ort: Schönwald
1.299 Beiträge
 
Delphi 10.3 Rio
 
#2

Re: Konzeptfrage: Dateien auf einer Website hochladen

  Alt 12. Apr 2008, 15:31
Warum machst du das nicht über eine Transaktion auf der Datenbank ? Du legst quasi die ID an, beim Hochladen, bearbeitest dann deinen Beitrag. Wenn du den Beitrag absendest machst du einen commit, ansonsten einen rollback (z.B. beim Session-timeout).
Uwe
e=mc² or energy = milk * coffee²
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Konzeptfrage: Dateien auf einer Website hochladen

  Alt 12. Apr 2008, 15:50
Danke. Ach das geht wieder mit den Transaktionen. Ich glaube, langsam muss ich mich da wirklich mal tiefer einarbeiten. Scheint schon sehr komfortabel zu sein.
  Mit Zitat antworten Zitat
Klaus01
Online

Registriert seit: 30. Nov 2005
Ort: München
5.755 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: Konzeptfrage: Dateien auf einer Website hochladen

  Alt 12. Apr 2008, 16:17
Hallo Matze,

könntest Du nicht für die Dateien die noch nicht commited wurden
eine TemporäreID vergeben, wenn dann der Beitrag "abgeschickt"
wurde die Temp.ID durch die SystemID ersetzen.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Konzeptfrage: Dateien auf einer Website hochladen

  Alt 12. Apr 2008, 16:39
Hallo Klaus!

Wie meinst du das genau?

Momentan ist es so, dass die ID dann durch das Auto-Increment erzeugt wird, wenn ein Eintrag abgesendet wurde. D.h. ich müsste diese ID "reservieren" und das geht eigentlich ja nicht. Eine temporäre ID würde da auch nichts bringen, wenn ich das richtig verstanden habe.

Ich denke, das einfachste ist wirklich, den Datensatz beim Hochladen anzulegen, bis ich mir die Transaktionen mal näher angesehen habe.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz