
في شرحنا اليوم سنقوم ببرمجة نموذج "FORM" مبسط لإرسال رسالة تحقق لرقم جوال العميل مكونة من 4 خانات عشوائية " ***" ومثل هذه الخطوة يحتاجها المبرمج لفلترة عمليات التسجيل الضارة مثل عضويات السبام والعضويات الوهمية وكذلك تجبر العميل على التسجيل برقم جوال مفعل .
الخطوة الأولى :
تشغيل السيرفر المحلي
الخطوة الثانية:
دخول PHPMYADMIN
من خلال المسار ( localhost/phpmyadmin)
الخطوة الثالة :
انشاء قاعدة بيانات باسم verify
انشاء جدول بيانات باسم sms
ادراج الحقول التالية :
ID النوع INT تلقائي - الطول 11 - مفتاح اساسي -غير متكرر
PIN النوع INT الطول 11
PHONENUM النوع INT الطول 11
ACTIVE النوع INT القيمة الافتراضية 0
الخطوة الرابعة
ادراج مجلد باسم sms
بداخل مجلد www او مجلد ملفات الموقع بداخل مسار السيرفر المحلي
الخطوة الخامسة
انشاء ملف html للنموذج باسم sms.html
يضم الاكواد التالية :
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
body{background-color: lightblue;}
form{
width:300px;
height: 400px;
position: absolute;
top: 50%;
left: 50%;
margin-right: -50%;
transform: translate(-50%, -50%);
background-image: url('https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHPxTZ4qCkwk5stRHbfbGK9E43HDEVc8hTMxToVD1NKyEK2TkQ0SlzDviTZdTsBLBOMQQ8uWuAwYoExGgFO7hhgdq7L2dazWMtrslw79c-wERFli8sQdx1RTwwSSX4E8qsJ_ewCFpHB-M/s1600/images.png') ;
background-repeat: no-repeat;
}
footer {
position: fixed;
left: 0;
bottom: 0;
width: 100%;
background-color: red;
color: white;
text-align: center;
}
input[type=phone] {
position: fixed;
left: 20%;
bottom: 50%;
margin-right: -20%;
transform: translate(-20%, -20%);
width: 50%;
background-color: blue;
color: white;
text-align: center;
}
input[type=submit] {
position: fixed;
left: 20%;
bottom: 40%;
margin-right: -20%;
transform: translate(-20%, -20%);
width: 50%;
background-color: #4CAF50;
color: white;
text-align: center;
}
</style>
<title>verify your phone number</title>
</head>
<body>
<form action="sms.php" method="POST">
<br><input type="phone" name="phonenum" placeholder="ادخل رقم جوالك">
<br><input type="submit" value="تحقق">
</form>
</body>
<footer>fab2.info code by F_i4i 2018</footer>
</html>
حيث أن :
<form action="sms.php" method="POST">
<br><input type="phone" name="phonenum" placeholder="ادخل رقم جوالك">
<br><input type="submit" value="تحقق">
</form>
منطقة النموذج
action="sms.php"
صفحة التوجية
<input type="phone" name="phonenum" placeholder="ادخل رقم جوالك">
حقل ادخال رقم الجوال
<input type="submit" value="تحقق">
ايقونة التوجية
المرحلة السادسة :
انشاء صفحة الاتصال بقاعدة البيانات بلغة php تضم الاكواد التالية :
<?php
$con = mysql_connect("localhost","root","");
mysql_select_db("verify") OR die('db not connected' .mysql_error());
if (!$con)
{
die('Could not connect: ' .myaql_error());
}
حيث أن :
mysql_select_db("verify")
اسم قاعدة البيانات
المرحلة السابعة
*اولا تحتاج الى اشتراك بخدمة الرسائل النصية sms عبر احد موزعي الخدمة بالاضافة الى ضرورة دعمة لخدمة الارسال من خلال رابط url
ثانيا انشاء صفحة php لرفع البيانات الى القاعدة واسمها sms.php
وتضم الاكواد التالية :
<style type="text/css">
body{background-color: lightblue;}
table,tr,td{background-color:white; border: solid 2px;
width: 50%;text-align: center;}
</style>
<?php
require("db.php");
$pin= rand(1000, 9999); // random 4 digit code;
$phonenum=$_POST['phonenum'];
$query="INSERT INTO sms VALUE('','$pin','$phonenum')";
$result=@mysql_query($query);
$un=" username";// معلومات موفر الخدمة قم بالتعديل عليها
$pwd="password";
$senderby="FAB2.INFO";
$msg2=$pin;//نهاية كود موفر الخدمة
if($result)
{
echo "<center><table><tr><th>";
echo "هل رقم الجوال صحيح؟";
echo "</th></tr>";
echo"<tr><td>$phonenum</td></tr>";
echo "<tr><td>";
echo "<a href=http://msegat.com/gw/?userName=$un&userPassword=$pwd&numbers=$phonenum&userSender=$senderby&msg=$msg2&By=Link&msgEncoding=UTF8>نعم ارسل الرمز</a></center>";
echo "</td></tr>";
}
else{echo"not registered";}?>
حيث أن
require("db.php");
كود استدعاء ملف الاتصال بالقاعدة
$pin= rand(1000, 9999);
كود مولد الارقام العشوائية بحيث تكون النتيجة مكونة من اربعة ارقام على هذا النحو "****"
$phonenum=$_POST['phonenum'];
كود ربط حقل الرقم من قاعدة البيانات بحقل الارسال في صفحة sms.html
$query="INSERT INTO sms VALUE('','$pin','$phonenum')";
كود ارسال المعلومات المدخلة الى قاعدة البيانات و "sms" هو اسم جدول البيانات
else{echo"not registered";}?>
كود رسالة الخطأ في حال فشل الاتصال
الخطوة النهائية
تجربة الاسكربت
نلاحظ تطابق الرقم العشوائي المرسل مع الرقم العشوائي المخزن بقاعدة البيانات
تابعوا الدرس القادم حيث ساشرح الية مطابقة الرقم المرسل مع الرقم الموجود بقاعدة البيانات والية التفعيل
السلام عليكم
ردحذففي هذا الجزء من الكود اين اضع بيانات موفر الخدمة اللتي لدي؟
<?php
require("db.php");
$pin= rand(1000, 9999); // random 4 digit code;
$phonenum=$_POST['phonenum'];
$query="INSERT INTO sms VALUE('','$pin','$phonenum')";
$result=@mysql_query($query);
$un=" username";// معلومات موفر الخدمة قم بالتعديل عليها
$pwd="password";
$senderby="FAB2.INFO";
$msg2=$pin;//نهاية كود موفر الخدمة
علما ان لدي من موفر الخدمة البيانات التالية:-
$api_url
$username
$password
$Text
$Sender
$number