Heim  >  Artikel  >  Backend-Entwicklung  >  So verwenden Sie ein Token in PHP, um das wiederholte Senden von Formularen zu verhindern

So verwenden Sie ein Token in PHP, um das wiederholte Senden von Formularen zu verhindern

墨辰丷
墨辰丷Original
2018-06-04 10:07:391484Durchsuche

In diesem Artikel wird hauptsächlich die Methode von PHP vorgestellt, die das wiederholte Senden von Formularen verhindert. Dabei wird eine verschlüsselte Zufallszahl generiert und in der Token-Variablen der Sitzung gespeichert. Gleichzeitig wird der Wert zum Ausblenden in das Formular eingefügt Um eine wiederholte Einreichung des Formulars zu verhindern, können sich Freunde, die es benötigen, auf

<?php
/*
* PHP使用token防止表单重复提交
* 此处理方法纯粹是为了给初学者参考
*/
session_start();
function set_token() {
  $_SESSION[&#39;token&#39;] = md5(microtime(true));
}
function valid_token() {
  $return = $_REQUEST[&#39;token&#39;] === $_SESSION[&#39;token&#39;] ? true : false;
  set_token();
  return $return;
}
//如果token为空则生成一个token
if(!isset($_SESSION[&#39;token&#39;]) || $_SESSION[&#39;token&#39;]==&#39;&#39;) {
  set_token();
}
if(isset($_POST[&#39;test&#39;])){
  if(!valid_token()){
    echo "token error";
  }else{
    echo &#39;成功提交,Value:&#39;.$_POST[&#39;test&#39;];
  }
}
?>
<form method="post" action="">
  <input type="hidden" name="token" value="<?php echo $_SESSION[&#39;token&#39;]?>">
  <input type="text" name="test" value="Default">
  <input type="submit" value="提交" />
</form>

beziehen. Zusammenfassung: Das Obige ist der gesamte Inhalt Ich hoffe, dass dieser Artikel für das Studium aller hilfreich sein wird.

Verwandte Empfehlungen:

Detaillierte Erläuterung von Funktionsbeispielen für PHP-Downloaddateien

PHP verwendet die Header-Methode, um das zu implementieren Datei-Download-Funktion

PHP-Methode zum Generieren von Farb-QR-Code basierend auf QRCODE

Das obige ist der detaillierte Inhalt vonSo verwenden Sie ein Token in PHP, um das wiederholte Senden von Formularen zu verhindern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn