cari

Rumah  >  Soal Jawab  >  teks badan

php - Bahagian PC mengehadkan bilangan log masuk pengguna!

Saya menyimpan bilangan ralat log masuk dan masa dalam sesi Apabila bilangan ralat maksimum dicapai, saya tidak akan dapat log masuk. Namun, saya masih boleh log masuk selepas membersihkan kuki. Bagaimana saya harus menyelesaikannya? Atau adakah terdapat cara lain untuk mengehadkan bilangan log masuk? Terima kasih!

怪我咯怪我咯2763 hari yang lalu876

membalas semua(4)saya akan balas

  • 我想大声告诉你

    我想大声告诉你2017-05-31 10:35:27

    Tambah medan pada pangkalan data dan kunci akaun jika bilangan kali melebihi...

    balas
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-31 10:35:27

    Gunakan memcache atau redis untuk kawalan cache

    $key = akaun log masuk

    $value = Bilangan log masuk yang gagal

    $ini->set($key,$value);

    balas
    0
  • 高洛峰

    高洛峰2017-05-31 10:35:27

    Gunakan ip dan HTTP_USER_AGENT untuk menentukan sama ada ia adalah pengguna yang sama

    balas
    0
  • 高洛峰

    高洛峰2017-05-31 10:35:27

    Situasi seperti anda hanya boleh dikendalikan melalui cache global. Jika anda ingin mengawal bilangan log masuk untuk nama pengguna tertentu, maka
    1 Untuk caching nilai kunci
    unified data structure key=value => username={'number of logs':1}, dan kemudian gunakan redis, memcache, mysql. (Buat jadual cache, lajur [nilai kunci], kunci cincang indeks)
    Secara langsung $userinfo = $cacheobj->get('username') untuk mendapatkan maklumat pengguna, tentukan bilangan log masuk dan tambah bilangan log masuk $cacheobj -> set('nama pengguna', $userinfo) tulis balik

    2. Masukkannya ke dalam struktur jadual maklumat log masuk pangkalan data
    Tambah lajur nombor log masuk baharu pada jadual log masuk pengguna mysql, dan kemudian panggil sql, dapatkan, hakim, kenaikan automatik, dan kemas kini

    Jika anda ingin memasukkan latitud masa, maka

    1. Untuk cache nilai kunci
    struktur data dikemas kini kepada nama pengguna = {'bilangan log masuk': 1, 'masa tamat masa': cap waktu}, dan penghakiman ditambah latitud masa ditambahkan pada penghakiman. bilangan log masuk ditetapkan kepada 0

    2. Untuk cache nilai kunci bukan mysql (redis, memcache)
    Tetapkan $cacheobj->('nama pengguna', 'bilangan log masuk', tamat masa)

    3 Masukkannya ke dalam struktur jadual maklumat log masuk pangkalan data
    Dalam kes ini, tambah lajur tamat masa

    Terdapat banyak cara untuk melaksanakannya, terutamanya bergantung pada senario dan sumber sebenar.

    balas
    0
  • Batalbalas