cari

Rumah  >  Soal Jawab  >  teks badan

javascript - Melalui sesi, kod pengesahan yang dijana oleh php boleh dimuat semula dengan mengklik padanya Mengapa?

Jana kod pengesahan melalui php, dan kemudian keluarkan dengan teg img.

Maafkan saya, jika terdapat session_start(), mengapa acara onclick ditulis seperti ini, dan mengklik akan mempunyai kesan menyegarkan semula kod pengesahan? (Kod pengesahan baharu akan muncul)
Tiada sesi dan klik tidak sah.

kod html

<img src="verifyCode.php" onclick="this.src='verifyCode.php'"/>

php

//省略验证码生成代码...

imagepng($image);//输出图片

session_start();//开始会话
PHP中文网PHP中文网2780 hari yang lalu450

membalas semua(3)saya akan balas

  • 某草草

    某草草2017-05-16 13:01:41

    onclick="this.src='verifyCode.php?id='+Math_random()"/>
    Ini sepatutnya cukup. Tambahkan nombor rawak pada imej, ia akan berbeza setiap kali dan anda boleh menyegarkannya

    balas
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-16 13:01:41

    Adakah kod ini session_start() sebelum imej dicipta?
    Jika sebelum ini, secara amnya semasa membuat kanvas, anda perlu menyuntik maklumat pengesahan ke dalam $_SESSION Suntikan mungkin gagal kerana sesi tidak dibuka dan pengeluaran imej kod pengesahan akan ditamatkan.

    balas
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-16 13:01:41

    Gunakan sesi untuk mengesahkan kod pengesahan grafik Prinsip umum adalah untuk terlebih dahulu menyimpan kod pengesahan semasa a dalam sesi, kemudian gunakan a untuk menjana kod pengesahan grafik dan mengembalikannya kepada pelanggan. Pelanggan memasukkan kod pengesahan a ke pelayan dan pelayan mengesahkannya berdasarkan data yang disimpan dalam sesi semasa.

    Jika anda menggunakan kaedah ini dan sesi tidak didayakan, anda tidak akan dapat menyimpan dan menggantikan kod pengesahan a dalam sesi, dan sudah tentu ralat akan berlaku.
    (Nota: Output imej tiada kaitan dengan pengaktifan sesi)

    balas
    0
  • Batalbalas