Verschiedene Felder updaten

jobc100

Grünschnabel
Hallo,

Ich muss eine Internetseite machen, bei der relativ viele Daten hin und hergeschoben bzw. aktualisiert werden. Es gibt nun verschieden Felder im Formular, die schon ausgefüllt sind und andere, die nachträglich gepflegt werden.
Wie kann ich nun mit PHP herausfiltern, welche Daten schon im Formular waren und welche nachträglich geändert wurden?...:confused:

Ich bin absoluter PHP-Neueinsteiger und habe gleich ein sehr großes Projekt.
Das gute an der Sache ist, dass ich in den nächsten 4-5 Wochen sehr viel zeit habe, mich um das Projekt zu kümmern. Nein, ich gehe nicht ins Gefängnis, sondern ins Krankenhaus und anschließend in die Reha.

Ich hoffe, es kann mir jemand helfen...
 
Das Prüfen identischer Daten ist vermutlich kostenintensiver als das stumpfe Überschreiben identischer Daten. Es ist also einfacher den gesamten Datensatz zu überschreiben als nur die veränderten Werte, die dann ja erst ermittelt werden müssten.
 
Hallo Gumbo,

das habe ich mir auch schon überlegt, aber es sind halt wirklich sehr viele Daten, im ersten Formular schon an die 40 Felder, die aktualisiert werden müssen. Die Formulare sollen von insgesamt 5 - 8 Peronen geändert werden, wobei diese Personen nicht auf den gleichen DS zugreifen.
 
Hallo Gumbo,

es sind insgesamt 130 Felder, die teilweise schon gefüllt sind. Die felder verteilen sich auf 8 Formulare und gehören zu 1 Datensatz, der auf 8 Tabellen aufgeteilt wird.
Macht es das nicht ein wenig schwieriger? :rolleyes:
Der eine Datensatz hat natürlich eine eindeutige ID?:confused:

Vielen Dank für die schnelle Antwort...:)

P.S. Ich bin DB-Vorbelastet
 
Probier doch einfach beide Varianten aus: Erstelle ein Testskript, das die Daten des jeweiligen Datensatzes vorher vergleicht und nur unterschiedliche Daten aktualisiert, und ein Testskript, das einfach alle Daten des jeweiligen Datensatzes rücksichtslos überschreibt, und vergleiche beide in Hinsicht auf Geschwindigkeit und Ressourcenauslastung.
 
Hallo Gumbo,

wie könnte so ein Testcript im grund aussehen, bei dem ich die Felder vergleiche?

Hats Du ggf. eine Anregung für mich?
Ich bin blutiger Anfänger und habe keine Erfahrung mit PHP. Ich bin aber ein guter autodidakt.
Wenn ich ein Script habe, das die Felder vergleicht, kann ich das relativ schnell auf meine Bedürfnisse zurechtrücken.

Besten Dank im Voraus..
 
Code:
SELECT
        `Feld-1` = `Wert-1` AS `Feld-1`,
        `Feld-2` = `Wert-2` AS `Feld-2`,
        `Feld-3` = `Wert-3` AS `Feld-3`,
        …
        `Feld-n` = `Wert-n` AS `Feld-n`
  FROM
        `Tabelle`
  WHERE
        `ID` = id
Als Ergebnismenge erhältst du ein assozitives Array mit dem Feldname als Schlüssel und als jeweiligen Wert die Gleichheit des aktuellen Werts zum neuen Wert in der Form einer 0 oder einer 1. Daraus kannst du dann die UPDATE-Abfrage konstruieren.

Ich kann dir aber jetzt schon sagen, dass diese Variante allein durch die doppelte Anzahl an Abfragen sehr wahrscheinlich länger dauern wird.
 
Hallo Gumbo,

vielen Dank dafür.
Damit kann ich dann schon mal was anfangen.
Aber es sieht so aus, wie Du es sagst, dass die Abfragen sehr umfangreich sein werden und dadurch natürlich deutlich länger als die Überschreibung dauern.

Besten Dank für deine schnelle Hilfe.

Gruß
JobC100
 
Zurück