Передать JavaScript var в PHP внутри функции JavaScript - PullRequest
0 голосов
/ 08 марта 2019

Я знаю, что этот вопрос может быть продублирован.Но я все еще не мог найти решение еще.Давайте предположим, что у меня есть форма, похожая на эту

function validateForm(){
  var cryptedoriginalPassword = "<? echo $cryptedOriPassword; ?>";
  var password = document.forms["userForm"]["password"].value;
  
  if(password != ""){	
    if(password == crytedoriginalPassword){
      return true;
    }else{
     alert("Password do not match!");
     return false;     
    }
  }else{
    alert("Please type your password!");	
    return false;
  }
}
<form name="userForm" action="#" onsubmit="return validateForm()" method="POST">
<p>Old Password</p>
<input id="password" type="password" name="password" style="width: 200px;" />
<button>Submit</button>
</form>

Мой вопрос, мне удается получить значение пароля в validateForm (), но затем мне нужно передать переменную php, чтобы я мог проверить, если парольсовпадать с оригинальным паролем.Как я могу это сделать?

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

1 Ответ

0 голосов
/ 08 марта 2019

Я думаю, что лучшее решение - хранить переменную PHP в элементе DOM.

Вот оно, в вашем HTML-файле:

<body>
  <div id="cryptedOriPassword"><?=$cryptedOriPassword?></div>
</body>

И в вашем файле javascript вы можете получить доступ к этой переменной следующим образом:

function validateForm(){
    var cryptedOriPassword = document.getElementById('cryptedOriPassword');
    var password = document.forms["userForm"]["password"].value;
    if(cryptedOriPassword == password) {
        blablabla...
    }
}

Но это может быть небезопасно для добавления логики оценки пароля изсторона интерфейса, думаю, это не вызовет проблем с безопасностью

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...