السلام عليكم ورحمة الله وبركاته
لدي مشكلة تواجهني
اذا كان لدي جدول members والمصفوفات بالاسامي الطبيعيه username password email
كيف يمكنني عمل نظام فقدان كلمة مرور
وايضا كيف اضيف لنفسي في لوحة التحكم مراسلة الأعضاء جميعا حتي يبقون علي اتصال بالموقع
السلام عليكم ورحمة الله وبركاته
لدي مشكلة تواجهني
اذا كان لدي جدول members والمصفوفات بالاسامي الطبيعيه username password email
كيف يمكنني عمل نظام فقدان كلمة مرور
وايضا كيف اضيف لنفسي في لوحة التحكم مراسلة الأعضاء جميعا حتي يبقون علي اتصال بالموقع
وعليكم السلام ورحمة الله وبركاته
اهلا اخي
طريقة نظام فقدان كلمة السر ..
صراحة هناك اكثر من طريقة بشرح لك كلام :
اولا تعمل فورم يقوم العضو بوضع اما اسم المستخدم او البريد .. براحتك .. والافضل البريد من رأيي
ثم تعمل استعلام من الجدول member بشرط تساوي اما الايميل او اسم المستخدم حسب ماحددت
ثم ان كان هناك نتائج اما تقوم بتحديث الرقم السري وتقوم بارساله الى بريدية او تقوم بالاستعلام عن
بياناته السابقه وترسلها على بريدة
الثانيه :
عادي اعمل فوم ( العنوان - الرساله )
ثم بعد الغط على ارسال تقوم بالاستعلام من جدول الاعضاء وتكون طبعا في loop حلقة تكرار
اتمنى افدتككود PHP:
<?
while($row = mysql_fetch_array($SQL))
{
mail($row[user_email],$_POST[sub],$_POST[msg],$header);
}
?>
تحياتي
__________________
بي اتش بي العرب : php-ar.com
دروس PHP خاص : phpfaq.php-ar.com
new site : www.naifphp.net/web
طبعا مثل ماذكر أخوي فيه أكثر منطريقة الكود ألي تحت فيه طريقة لحل المشكلة هذي الطريقة تعتمد على أسم المستخدم طبعا أنا أعطيك فكرة عن الموضوع ممكن تعمل لك واحد يناسبك بطريقة ثانية
الكود :
كود:<? #الإتصال مع قواعد البيانات $dbc = mysql_connect("localhost", "username", ""); mysql_select_db("databasename", $dbc); //تفحص النموذج if(isset($_POST['submit'])){ // تفحص أسم المسخدم if(strlen($_POST['username']) > 2){ $username = $_POST['username']; $query = "SELECT id_user, email FROM user WHERE username=$username"; $result = mysql_query($query); $numR = mysql_num_rows($result); // التأكد من صحة أسم المستخدم if($numR==1){ $row = mysql_fetch_array($result, MYSQL_ASSOC); $user_id = $row['user_id']; $email = $row['email']; // تكوين كلمة مرور جديدة $password = substr(md5(uniqid(rand(), 1)), 3, 10); // تحديث قاعدة البيانات على كلمة المرور الجديدة $query = "UPDATE user SET password=PASSWORD($password) WHERE user_id=$user_id"; $result = mysql_query($query); // إرسال كلمة المرور إلى المستخدم $text = "كلمة مرورك هي : $password"; $title = "إسترجاع كلمة المرور"; $from = ""; mail($email, $title, $text, $from); echo "تمت عملة إرسال كلمة المرور راجع بريدك"; $submitT = true; }else{ echo "أسم المستخدم خطأ"; } } } if(!$submitT){ ?> <html dir="rtl"> <head> <meta http-equiv="Content-Language" content="ar-sa"> <meta http-equiv="Content-Type" content="text/html; charset=windows-1256"> <title>إسترجاع كلمة المرور</title> </head> <body> <form method="POST" action="<?= $_server['PHP_SELF'] ?>"> <fieldset style="padding: 2"> <legend>نموذج استرجاع كلمة المرور</legend> أدخل أسم المستخدم : <input type="text" name="username" size="20" value="<?= $_POST['username'] ?>"></fieldset><p align="center"> <input type="submit" value="إرسال" name="submit"></p> </form> </body> </html> <? } ?>
مشكور اخي الكريم علي الرد وفعلا استفدت كثيرا
بالنسبة لمشكلة مراسلة الاعضاء وجدت حل مؤقت في كود بقرية البى اتش بى لكنه ليس مجدي اذا كان هناك كمية اعضاء كثيرة فاانه سوف يستهلك الكثير من السيرفر