2016-04-26 2 views
0

ОК, вот что:
Проверка в интернет-магазине, у меня есть многостраничная форма. пользователь может зарегистрироваться без регистрации - никаких проблем до сих пор. Если у пользователя уже есть учетная запись, то, например, адресная форма будет заполнена его (в MySQL DB) сохраненными данными - никаких проблем пока нет. Все данные хранятся в текущем сеансе.Сравнение данных сеанса с данными формы

Задайте вопрос:
Если пользователь меняет адресные данные, как я знаю об этом? Я могу выполнить сравнение данных в конце процесса проверки, сравнивая данные db с данными сеанса и посмотреть, были ли или какие поля изменены. Будет ли это возможным путем? Или что было бы эффективным и наименее анонимным (для пользователя) способом обработки данных для возможных изменений?

+0

@ RyanVincent Что делать, если я покупаю для своей подруги? – azdonald

+0

Форма разбита на биллинг и часть адреса доставки. – frezno

+0

@Pedro Lobito Я ищу возможный способ справиться с этим. Не имеет смысла попробовать это и это, не зная заранее, действительно ли это имеет смысл или нет. – frezno

ответ

0

Вы можете поместить обработчики событий на адрес этого поля и сравнить новое значение со значениями, которые у вас есть в сеансе (или базе данных).

<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

означает ли это, что мне нужно пройти через все поля адреса (выставления счетов и доставки)? – frezno

+0

Это зависит от того, что вы планируете достичь, но тогда всегда лучше использовать самые последние данные, поэтому, если поле адреса изменяется, используйте данные в форме, а не данные в БД. – azdonald

Смежные вопросы