ฉันจะรีเซ็ตรหัสผ่านของผู้ใช้โดยทางโปรแกรมได้อย่างไร


11

ฉันมีแอปพลิเคชั่นมือถือแบบดั้งเดิมที่สื่อสารกับไซต์ drupal 7 ของฉันผ่านโมดูลบริการ ฉันต้องการให้ผู้ใช้สามารถรีเซ็ตรหัสผ่านจากแอปได้ มีวิธีเริ่มกระบวนการนี้แบบเป็นโปรแกรมหรือไม่ดังนั้นอีเมลจะถูกสร้างขึ้นด้วยโทเค็นการใช้งานครั้งเดียวที่หมดอายุใน 24 ชั่วโมงหรือไม่

ขอบคุณ

คำตอบ:


21

คุณสามารถใช้_user_mail_notify()ฟังก์ชั่นพร้อมกับวัตถุผู้ใช้เพื่อเรียกอีเมลรีเซ็ตรหัสผ่าน:

// Load a user (admin in this case).
$account = user_load(1);

// Invoke the email. It will be queued along with other system mail to be sent during cron
_user_mail_notify('password_reset', $account);

URL ล็อกอินครั้งเดียวที่มีเวลาหมดอายุ 24 ชั่วโมงจะถูกรวมไว้ในอีเมลนั้น


ขอโทษ ฉันยังไม่ได้ทดสอบสิ่งนี้ คุณลักษณะที่ฉันจะใช้เพื่อถูกผลักกลับไปหนึ่งรุ่นดังนั้นฉันจะทำเช่นนี้ในช่วงเดือนนี้ ฉันคิดว่ามันจะใช้งานได้เพราะดูเหมือนจะตรงไปตรงมามาก ขอบคุณ
lkiss80
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.