Thử dùng Code Snippet để viết một vài đoạn code

Submitted by superthin on 04/05/2017 - 10:06:35
Một đoạn code

Trong quá trình đăng bài viết cần mình họa đến một số đoạn mã lập trình, người viết mã luôn có mong muốn đoạn mã của mình phải dễ đọc. Hầu hết những ứng dụng CMS ngày nay đều có trang bị trực tiếp hoặc gián tiếp thông qua thành phần bổ sung giúp cho người soạn bài định dạng các đoạn mã lập trình được dễ dàng.

Vì website này còn mới mẻ, chúng tôi vừa viết nội dung, cũng vừa bổ sung thêm các chức năng. Hôm nay, chúng tôi vừa cài đặt một phần mở rộng (ở Drupal người ta gọi là module) mang tên Code Snippet, phần bên dưới sẽ "biểu diễn" một vài đoạn mã lập trình xem sao.

1
2
3
4
5
6
7
8
9
10
<?php
$to      = '[email protected]';
$subject = 'Gửi em thân yêu';
$message = 'Đã hơn một năm rồi chưa liên lạc với nhau, anh gửi thư này...';
$headers = 'From: [email protected]' . "\r\n" .
    'Reply-To:[email protected]' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();
 
mail($to, $subject, $message, $headers);
?>

Thêm một đoạn code JavaScript khác xem ra sao?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<script type="text/javascript">
    var divs = new Array();
    divs[0] = "errFirst";
    divs[1] = "errLast";
    divs[2] = "errEmail";
    divs[3] = "errUid";
    divs[4] = "errPassword";
    divs[5] = "errConfirm";
    function validate()
        {
      var inputs = new Array();
      inputs[0] = document.getElementById('first').value;
      inputs[1] = document.getElementById('last').value;
      inputs[2] = document.getElementById('email').value;
      inputs[3] = document.getElementById('uid').value;
      inputs[4] = document.getElementById('password').value;
      inputs[5] = document.getElementById('confirm').value;
      var errors = new Array();
      errors[0] = "<span style='color:red'>Please enter your first name!</span>";
      errors[1] = "<span style='color:red'>Please enter your last name!</span>";
      errors[2] = "<span style='color:red'>Please enter your email!</span>";
      errors[3] = "<span style='color:red'>Please enter your user id!</span>";
      errors[4] = "<span style='color:red'>Please enter your password!</span>";
      errors[5] = "<span style='color:red'>Please confirm your password!</span>";
      for (i in inputs)
      {
        var errMessage = errors[i];
        var div = divs[i];
        if (inputs[i] == "")
                document.getElementById(div).innerHTML = errMessage;
        else if (i==2)
        {
          var atpos=inputs[i].indexOf("@");
          var dotpos=inputs[i].lastIndexOf(".");
          if (atpos<1 || dotpos<atpos+2 || dotpos+2>=inputs[i].length)
                document.getElementById('errEmail').innerHTML = "<span style='color: red'>Enter a valid email address!</span>";
          else
                document.getElementById(div).innerHTML = "OK!";
        }
        else if (i==5)
        {
          var first = document.getElementById('password').value;
          var second = document.getElementById('confirm').value;
          if (second != first)
                document.getElementById('errConfirm').innerHTML = "<span style='color: red'>Your passwords don't match!</span>";
          else
                document.getElementById(div).innerHTML = "OK!";
        }
        else
                document.getElementById(div).innerHTML = "OK!";
       }
     }
        function finalValidate()
        {
          var count = 0;
          for(i=0;i<6;i++)
          {
            var div = divs[i];
            if(document.getElementById(div).innerHTML == "OK!")
            count = count + 1;
          }
          if(count == 6)
                document.getElementById("errFinal").innerHTML = "All the data you entered is correct!!!";
        }
   </script>

( Vẫn chưa thấy gì hiện ra?! <= dòng này được viết vào ngày đầu tiên khi mới cài Code Snippet. Vào lúc đó, Thin đã không biết cách cấu hình nên module không hoạt động. Mãi đến tháng 10/2017, Thin mới có dịp trở lại, và đoạn mã đã hoạt động đâu đó khoảng ngày 20/10/2017).

Hình bên trên là đoạn code đã chịu tác động của module mang tên Code Snippet được cung cấp trên cộng đồng Drupal.