2016-04-26 9 views
0

ok, hier ist die Situation:
Auschecken bei einem Online-Shop, ich habe ein mehrseitiges Formular. Benutzer können ohne Registrierung auschecken - keine Probs bisher. Wenn ein Benutzer bereits einen Account hat, wird das zB Adressformular mit seinen (in MySQL DB) gespeicherten Daten gefüllt - bisher keine Probs. Alle Daten werden in der aktuellen Sitzung gespeichert.Sitzungsdaten mit Formulardaten vergleichen

Jetzt ist die Frage:
Wenn der Benutzer seine Adressdaten ändert, woher weiß ich das? Ich kann am Ende des Checkout-Prozesses einen Datenvergleich durchführen, indem ich die Datenbankdaten mit den Sitzungsdaten vergleiche und sehe, ob oder welche Felder geändert wurden. Wäre das ein möglicher Weg? Oder was wäre ein effizienter und am wenigsten lästiger (für den Benutzer) Weg, um Daten für mögliche Änderungen zu überprüfen?

+0

@RyanVincent Was wäre, wenn ich für meine Freundin kaufen würde? – azdonald

+0

Das Formular ist in einen Rechnungs- und einen Versandadressenteil unterteilt. – frezno

+0

@Pedro Lobito Ich bin auf der Suche nach einem möglichen Weg, damit umzugehen. Es macht keinen Sinn, dies und das auszuprobieren, ohne vorher zu wissen, ob es Sinn macht oder nicht. – frezno

Antwort

0

Sie können Ereignishandler auf die Adresse dieses Felds setzen und den neuen Wert mit den Werten vergleichen, die Sie in der Sitzung (oder Datenbank) haben.

<form> 
    <input type="text" id="address" name="address" onchange="compareData" /> 
</form> 

<script> 
function compareData(){ 
var address = document.getElementById("address"); 
var sessionAddress = <?php echo $_SESSION['address']); ?>; 
var result = address.localeCompare(sessionAddress); 
//do what you want with result 
} 
</script> 
+0

bedeutet das, dass ich alle Adressfelder (Abrechnung und Versand) durchlaufen muss? – frezno

+0

Es hängt davon ab, was Sie erreichen möchten, aber dann ist es immer am besten, die neuesten Daten zu verwenden. Wenn sich das Adressfeld ändert, verwenden Sie lieber die Daten auf dem Formular als die Daten in der Datenbank. – azdonald

Verwandte Themen