הרשם שאלות ותשובות רשימת חברים לוח שנה הודעות מהיום

חזור   הוסטס - פורום אחסון האתרים הגדול בישראל > עיצוב גראפי, תכנות על כל שפותיו וקידום ושיווק אתרים > פורום תיכנות

   
|!|

 
 
כלים לאשכול תצורת הצגה
Prev הודעה קודמת   הודעה הבאה Next
ישן 16-06-06, 20:18   # 1
-roee-
חבר על
 
מיני פרופיל
תאריך הצטרפות: Nov 2005
מיקום: IL
הודעות: 864

-roee- לא מחובר  

[מדריך] בניית קוד אבטחה רנדומאלי ב PHP

במדריך זה אני יסביר לכם איך ליצור ב GD קוד אבטחה ולאחר מכן לבדוק אם המשתמש הקליד את הקוד נכון...

אנחנו לצורך העניין נשתמש בקובץ PHP שמתחיל ככה:
PHP קוד:
    switch($_GET["act"]) {

         case 
"image":
         
image();
         break;

         case 
"doimage":
         
doimage();
         break;

         default:
         
indeximage();
         break;
    } 
מטרת החלק הזה היא לבדוק איזה ערך יש ב GET שהוא ACT ולפי כך למיין את הקוד לפונקציות..

הפונקציה image();
בפונקציה זו אנחנו ניצור את התמונה שעליה יודפס קוד בעל 5 ספרות ואותיות רנדומליות לחלוטין..
על מנת לגשת אל התמונה עלינו לרשום <img src='?act=image'>

PHP קוד:
    function image() {
        
header ("Content-type: image/png");
        
$string substr(md5(time()) 0,5); // הקוד שיוצג הוא בעצם ה 5 אותיות או ספרות הראשונות בהצפנה MD5 של הזמן העכשיווי time()..
        
$font  4;
        
$width  50;
        
$height 20;
        
$im = @imagecreate ($width,$height);
        
$background_color imagecolorallocate ($im255255255); //רקע לבן
        
$text_color imagecolorallocate($im25500);
        
imagestring ($im$font00,$string$text_color);
        
imagepng ($im);
    } 
הפונקציה indeximage();
זוהי הפונקציה של ברירת המחדל.. כל מי שייכנס אל הדף שלנו רואה את פונקציה זו...
PHP קוד:
    function indeximage() {
        
$string substr(md5(time()), 0,5); // בדיוק אותו הערך שיש על התמונה
        
echo "
        <form method=\"POST\" action=\"?act=doimage\">
          <img src=\"image.php?act=image\"><br>
          <input type=\"hidden\" name=\"real\" value=\"$string\">
          <font face=arial>Enter the code below:</font> <input type=\"text\" name=\"input\" size=\"20\"><br>
          <input type=\"submit\" value=\"&ugrave;&igrave;&ccedil;\" name=\"submit\">
        </form>
        "
;
    } 
הפונקציה doimage();
בפונקציה זו אנחנו מקבלים 2 משתני POST. האחד הקוד הנכון אשר היה HIDDEN בטופס והשני הוא מה שהמשתמש הקליד..

PHP קוד:
    function doimage() {
        
$real $_POST["real"];
        
$input $_POST["input"];

        if(
$real != $input) { // אם המשתמש הקליד קוד שגוי
            
die("<font face=arial color=red>Incorrect</font>");
            return 
false;
        } else { 
// אם המשתמש הקליד קוד נכון
            
die("<font face=arial color=green>correct</font>");
            return 
true;
        }

    } 

הסוף!

מקווה שהבנתם משהו מהמדריך..
תהנו ותלמדו
  Reply With Quote
 

חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים)
 


חוקי פירסום
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is מופעל
סמיילים הם מופעל
[IMG] קוד מופעל
קוד HTML מכובה

קפיצה לפורום


כל הזמנים הם GMT +2. הזמן כעת הוא 21:33.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ