php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > SQL / Datenbanken
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


SQL / Datenbanken Probleme mit SQL? Hier könnt ihr eure Fragen zu SQL (MySQL, PostgreSQL, MS-SQL und andere ANSI-SQL Server) los werden.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 09-09-2003, 13:04
Honny
 Junior Member
Links : Onlinestatus : Honny ist offline
Registriert seit: Mar 2002
Beiträge: 174
Honny ist zur Zeit noch ein unbeschriebenes Blatt
Standard Überschneidung bei DB-Eintrag

Also, habe einen Online-Shop mit 10 Stück einer Ware XY:
User A kommt auf Bestellformular und will 10 Stück o. g. Ware bestellen (Mit dem Aufrufen des Bestellformulars wurde natürlich schon die aktuell verfügbare Menge in der DB abgefragt.). Bevor User A das Bestellformular abschickt, trödelt er auf der Seite noch so ein bisschen rum.
Inzwischen ist User B auf das Bestellformular gelangt und bestellt ohne Verzögerung 10 Stück. Theoretisch könnte jetzt User A durch Absenden seines Formulars auch noch mal 10 Stück bestellen, obwohl eigentlich kein Bestand mehr verfügbar ist.
Wie läßt sich ein solches Dilemma vom theoretischen Ansatz her am einfachsten vermeiden ???
Wie wird so was in der Praxis normalerweise gemacht ???
Mit Zitat antworten
freelancermap.de - IT Projektvermittlung für Selbständige und Freiberufler
  #2 (permalink)  
Alt 09-09-2003, 13:10
goth
  Moderator
Links : Onlinestatus : goth ist offline
Registriert seit: Mar 2002
Ort: Erde
Beiträge: 7.278
goth ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Indem du die Artikel im Warenkorb als reserviert berücksichtigst ... !
__________________
carpe noctem

Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht!
Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung!
Mit Zitat antworten
  #3 (permalink)  
Alt 09-09-2003, 13:21
Abraxax
  THE REAL HAXE (Administrator)
Links : Onlinestatus : Abraxax ist offline
Registriert seit: Jul 2002
Ort: neuss.nrw.de
Beiträge: 22.623
Abraxax befindet sich auf einem aufstrebenden Ast
Standard

sprich.... vor den tatsächlichen reservieren muss du noch einmal prüfen, ob die menge noch vorhanden ist.

user a ist selber schuld, wenn er trödelt...
__________________
INFO: Erst suchen, dann posten! | MANUAL(s): PHP | MySQL | HTML/JS/CSS | NICE: GNOME Do | TESTS: Gästebuch | IM: Jabber.org |


Mit Zitat antworten
  #4 (permalink)  
Alt 09-09-2003, 13:29
Honny
 Junior Member
Links : Onlinestatus : Honny ist offline
Registriert seit: Mar 2002
Beiträge: 174
Honny ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Wie hab' ich das "Reservieren zu verstehen ???
Mit Zitat antworten
  #5 (permalink)  
Alt 09-09-2003, 13:53
Innuendo
 Guest
Innuendo
Beiträge: n/a
Standard

Das hast Du so zu verstehen, dass Du eine Spalte hast, die z.B. "reserviert" heißt. Bestellt User A 10 Stück, dann schreibst Du in diese Spalte "10" rein, d.h. dass 10 Stück sozusagen "vorbestellt" sind.
Mit Zitat antworten
  #6 (permalink)  
Alt 09-09-2003, 14:14
Honny
 Junior Member
Links : Onlinestatus : Honny ist offline
Registriert seit: Mar 2002
Beiträge: 174
Honny ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Aber wenn User A auf dem Bestellformular ist, weiß ich ja noch garnicht, wieviel er letztendlich bestellen wird. Das sehe ich ja erst, wenn er das Formular abgesandt hat, sprich wenn die Bestellung in der DB verbucht ist.
Und ich kann ja schlecht von vorneherein den gesamten Bestand reservieren (blockieren), weil er ja evtl. z. B. nur 5 Stück nimmt.
Mit Zitat antworten
  #7 (permalink)  
Alt 09-09-2003, 14:41
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

wer zuerst kommt, mahlt zuerst.

wenn user A ewig rumtrödelt, user B ihm also in der zwsichenzeit die zehn artikel weggeschnappt hat, dann bekommt user A eben nach dem absenden seines formulares die meldung angezeigt, dass es keine 10 stück mehr gibt.

ich sehe nicht, wo da das problem liegt ...
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #8 (permalink)  
Alt 09-09-2003, 15:33
Honny
 Junior Member
Links : Onlinestatus : Honny ist offline
Registriert seit: Mar 2002
Beiträge: 174
Honny ist zur Zeit noch ein unbeschriebenes Blatt
Standard

@wahsaga: Ah, da kommen wir der Sache ja schon näher. Ich vermute jetzt mal, du meinst, man müsste vor dem DB-Eintrag noch mal checken, ob wirklich immer noch Bestand da ist.
Das scheint ja für Euch alles selbstverständlich zu sein. Ich wollte halt eben möglichst wenige DB-Anfragen generieren und konnte mir zudem nicht vorstellen, daß die Lösung so trivial sein sollte.

Zitat:
wer zuerst kommt, mahlt zuerst
^^Das ist ja prinzipiell richtig; nur wenn das Ganze nicht richtig durchdacht ist, ist der Verkäufer der Dumme, wenn er nicht liefern kann (Denn es ist ja seine Schuld, wenn er eine Bestellung zulässt, obwohl er eigentlich keinen Bestand mehr hat.).
Mit Zitat antworten
  #9 (permalink)  
Alt 09-09-2003, 15:42
goth
  Moderator
Links : Onlinestatus : goth ist offline
Registriert seit: Mar 2002
Ort: Erde
Beiträge: 7.278
goth ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Wann willst Du denn so etwas prüfen ... ?

Natürlich wird so etwas geprüft wenn das Formular abgeschickt wird ...

Normalerweise hat man irgendwo in der DB einen Bestand stehen ... und zieht davon die vorliegenden Bestellungen ... und die Bestände vorliegender Warenkörbe ab ... man sollte dabei halt zusehen das ein nicht in eine Bestellung umgewandelter Warenkorb nicht zu lange bestehen bleibt ...

... zuviele DB-Abfragen mag nicht gut sein ... zu wenige ist aber auch nicht besser ...
... Benutzereingaben werden immer im empfangenden Script geprüft ... Prinzip: "Never trust incomming Data!".
__________________
carpe noctem

Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht!
Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung!
Mit Zitat antworten
  #10 (permalink)  
Alt 09-09-2003, 16:12
Honny
 Junior Member
Links : Onlinestatus : Honny ist offline
Registriert seit: Mar 2002
Beiträge: 174
Honny ist zur Zeit noch ein unbeschriebenes Blatt
Standard

@goth: Schon klar ! In meinem Fall möchte ich halt im Formular selbst die noch zur Verfügung stehende Menge anzeigen. Infolgedessen muß ich auch schon vor Formularausgabe eine Bestandsabfrage machen.
Mit Zitat antworten
  #11 (permalink)  
Alt 10-09-2003, 12:28
Innuendo
 Guest
Innuendo
Beiträge: n/a
Standard

Jein.

1. Möglichkeit: Du zeigst vor dem Formular dem Nutzer an, wieviel noch im Bestand ist. Dann weiß er, wieviele er noch bestellen kann.

2. Möglichkeit: Der Nutzer füllt das Formular aus und klickt auf "Übernehmen". Jetzt überprüfst Du anhand der eingegebenen Bestellmenge, ob soviele Stücke überhaupt noch verfügbar sind.
Mit Zitat antworten
  #12 (permalink)  
Alt 11-09-2003, 19:07
Honny
 Junior Member
Links : Onlinestatus : Honny ist offline
Registriert seit: Mar 2002
Beiträge: 174
Honny ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hab 's inzwischen gemäß der 2. Möglichkeit von Innuendo umgesetzt.
Ich glaube, das reicht für meine Zwecke.

Danke noch mal !
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

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 an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

PHP Marktplatz-Software
PHP Marktplatz-SoftwareEs hat sich viel getan! Die neue Version 7.5.9 unserer PHP Marktplatz-Software ebiz-trader steht ab sofort zur Verfügung.

28.10.2019 | Berni

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni


 

Aktuelle PHP Scripte

ebiz-trader 6.0 - Das professionelle PHP Marktplatz Script ansehen ebiz-trader 6.0 - Das professionelle PHP Marktplatz Script

Mit unserer Lösungen können Sie nahezu jeden B2B / B2C Marktplatz betreiben den Sie sich vorstellen können. Ganz egal ob Sie einen Automarktplatz, Immobilenportal oder einfach einen Anzeigenmarkt betreiben möchten. Mit ebiz-trader können Sie Ihre Anforder

21.10.2020 Berni | Kategorie: PHP/ Anzeigenmarkt
Sendeplan Script inkl. Wunsch- und Grußbox + Kick-System + Bewerbungssystem

Das professionelle Sendeplan PHP Script inkl. Wunsch- und Grußbox + Kick-System für dein Webradio. Der übersichtliche Sendeplan bietet deinen Moderatoren und Zuhörern die perfekte Übersicht der aktuellen Shows! Du kannst nicht nur Sendungen eintragen, s

20.10.2020 drcomputer | Kategorie: PHP/ Web Radio
Newsmanager 2

Der Newsmanager 2 ist sehr Vielfältig und kann News schreiben, Newsletter versenden und RSS Feeds in einem erzeugen.

20.10.2020 Stephan_1972 | Kategorie: PHP/ News
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:07 Uhr.