know yourselves. information, computer, 7 wonders, various.

Sunday, October 23, 2016

php_mysql_part10_Hit Counter তৈরী করা





Hit Counter তৈরী করা
পেজ Hit Counter বসানো খুবই সহজ কাজ এজন্য ২টি ফাইল তৈরী করতে হবে। একটি হচ্ছে php ফাইল অন্যটি হচ্ছে txt ফাইল। php ফাইল দ্বারা Text ফাইলে কতটি Number আছে সেটি নির্ধারণ করা হবে। এছাড়াও php ফাইল দ্বারা কোন ইউজার নতুন প্রবেশ করলে বা পেজকে রিফ্রেশ করলে ১টি করে নতুন সংখ্যা নির্দেশ করা হবে। অর্থাৎ php দ্বারা text ফাইলে Read Write এর ব্যবস্থা করানো হবে। php এর Basic অংশে Part-1 বইতে fopen felose, ($filename, ‘r’ ) ($filename, ‘w’) কমান্ডগুলি সম্বন্ধে বলা আছে। আমরা আলাদা ভাবে php ফাইল  না খুলে আমাদের header.php ফাইলের শেষে কোড সংযোজন করবো।

১. header.php ফাইলটি খুলুন। শেষের দিকে hr অ্যাট্রিবিউটের পর নতুন করে একটি php ট্যাগ নিন এবং নতুন ট্যাগের মধ্যে কোডিং লক্ষ্য করুন। প্রথম লাইনে $filename নামে একটি ভেরিয়েবল নিয়ে counter.txt একটি text ফাইলকে অ্যাসাইন করা হয়েছে। আমরা counter.txt নামে একটি ফাইল তৈরী করবো, যেখানে রেজাল্ট জমা থাকবে। এর পর $fp নামে আরেকটি ভেরিয়েবল নিয়েছি এবং fopen = filename অর্থাৎ counter.txt ফাইলকে r দ্বারা Read করা বলা হয়েছে । পরে $counter নামে আরেকটি ভেরিয়েবল নেয়া হয়েছে। এখানে বলা হয়ে $fp ভেরিয়েবলের মধ্যে রক্ষিত এবং $filename (counter.txt) ফাইলে সাইজ (filesize) কত সেটি গননা করতে হবে। এরপর felose দিয়ে $fp ভেরিয়েবলকে Close করা হয়েছে। এরপর আবার বলা হয়েছে আগের যে $Counter ভেরিয়েবল ছিল এর সাথে ১ যোগ করে নতুন করে $Counter এ রাখতে হবে। এরপর echo করে $Counter  এর মধ্যে জমানো রেজাল্ট দেখাতে বলা হয়েছে। এরপর $fp = fopen ($filename, ‘w’ ) এর মাধ্যেমে আবার যদি কেউ নতুন করে প্রবেশ বা Refesh করে তবে আবার $filename (Counter.txt) ফাইল op করে w এর মাধ্যেমে Write করে $fp এর মধ্যে রাখা হয়েছে। এরপর fwrite দ্বারা $fp $Counter ভেরিয়েবলের মধ্যে Write করে ( Counter.txt ফাইলের কনটেন্ট) fclose  করতে বলা হয়েছে। নিচের কোডিং লক্ষ্য করুন।

Text ফাইল তৈরী করা
১. এখন c://XAMPP/htdocs/mysite ফোল্ডাওে Counter.txt নামে একটি ফাঁকা Text ফাইল তৈরী করে রাখুন।
২. এখন অপর পেজে ব্রাউজ করুন দেখুন বামদিকে শেষে Hit Counter Total hit সংখ্যা দেখাচ্ছে।

Site Decoration করা
এখন আমরা আমাদের Tutorials পেজে একটু ডেকোরেশন করবো। এখানে কিছু Sentence কে Random ভাবে প্রর্দশন করা হবে। সামান্য কিছু php কোডিং যোগ কওে এটি করা সম্ভব।

দেখুন Tutorials পেজ খুললে নিচে লাল কালারের একটি Sentence প্রর্দশিত হচ্ছে You can make document using word Tutorials.
আবার যদি পেজটি Reload করেন বা নতুন কোন ইউজার প্রবেশ করে তবে ম্যাসেজটি পরিবর্তিত হয়ে দেখাচ্ছে

You can illustrator Your document using illustrator Tutorials.
Random Text প্রর্দশন
১. Tutorials.php ফাইলটি খুলুন দেখুন কোডিং এ শেষের দিকে নতুন একটি php ট্যাগ নেওয়া হয়েছে। এখানে $quotes নামে একটি variable নিয়ে পরপর ৬ লাইন ৬টি কোটেশন দেওয়া হয়েছে। এই লাইন সংখ্যা কম বা বেশী হতে পারে। পরে $rand নামে আরেকটি variable নিয়ে উল্লেখ time করে দেওয়া হয়েছে। আবার $auto নামে একটি variable নিয়ে  $rand এর মধ্যে থাকা ডাটাকে count করতে বলা হয়েছে। শেষে echo এর মাধ্যমে $auto তে রাখা ডাটাকে প্রর্দশন করা হয়েছে। সাথে <p>, <center> <font> অ্যাট্রিবিউট ব্যবহার করে টেক্সটকে ডেকোরেশন করা হয়েছে। আপনি echo র মাধ্যেমে একটি Session কেউ কল করতে পারেন। আমরা শেষে এটি করেছি। এর কারণে কেউ Log in থাকলে তার নাম প্রর্দশন করবে।

Tutorials.php ফাইলের বর্ধিত অংশের কোড
<?php
$quotes[] = "You can edit your photo using Photoshop Tutorials.";
$quotes[] = "You can illustrate your document using Illustratrator  Tutorials.";
$quotes[] = "You can edit your movie using Premiere Tutorials.";
$quotes[] = "You can make animation using Flash Tutorials.";
$quotes[] = "You can make web page using HTML Tutorials.";
$quotes[] = "You can make document using Word Tutorials.";

srand ((double) microtime() * 1000000);
$auto = rand(0,count($quotes)-1);

echo "<p><center><font face='Verdana' size='4' color=red><b>" . $quotes[$auto] .  "</center></font></p>";
echo "<p><center><font face='Verdana' size='4' color=green><b>" . $_SESSION['bappi'] .  "</center></font></p>";
?>


Random ছবি সংযোজন
Random Text এর মত করে আমরা এখন Random Image সংযোজন করবো। আমাদের header.php ফাইলের শেষের দিকে একটি php ট্যাগে কিছু কোড সংযোজন করেছি। আমাদের প্রজেক্টে আমরা ৫টি Animated.Gif ফাইল ব্যবহার করেছি প্রতি ফাইল ২টি করে .jpeg ইমেজ দিয়ে  ২ফ্রেমের এমিমেশন সংযোজন করা হয়েছে। এনিমেটেড Gif তৈরী করার জন্য ছোট ছোট অনেক সফটওয়্যার পাওয়া যায় সংগ্রহ করে নিন অথবা Net থেকে GIFMARK.me সাইটে গিয়ে Gif তৈরী করুন। নিচের কোডিং লক্ষ্য করুন  প্রথমেই start এর মাধ্যে মান=5 দেওয়া হয়েছে। যেহেতু আমাদের ইমেজের পরিমান ৫ টি। এর পর file-type ভেরিয়েবলে আমাদের ব্যবরূত mysite এর মাধ্যমে ব্যবহৃত mysite অবস্থিত Images ফোল্ডারের নাম দেওয়া হয়েছে। এর পর start  ভেরিয়েবল প্রথম ইমেজের ক্রমিক বলে দেওয়া হয়েছে। আমাদের ইমেজের নাম হচ্ছে যথাক্রমে I,gif, 3. gif, 4 gif এবং 5. gif.
এর পর $randam ভেরিয়েবল নিয়ে startto tal কে কল করা হয়েছে। শেষে Image-Name ভেরিয়েবলের ডাটা ও ফাইল টাইপ করা হয়েছে। শেষে eclo দিয়ে ইমেজ ফোল্ডার থেকে Image এর নাম দিয়ে প্রদর্শন করতে বলা হয়েছে। নিচের কোডিং লক্ষ্য করুন


Header.php ফাইলের বর্ধিত কোডিং


ব্রাউজারে  নিচের মত ফলাফল পাওয়া যাবে।

ম্যাসেজ প্রর্দশন
আমরা আমাদের my header-final-php ফাইলে আগেই session যোগ করেছি এই session টিকে আরও একটু মডিফাই করে ইউজার যদি login করে তবে তাকে একটি ম্যাসেজ প্রর্দশন করা হবে। তবে আমরা বর্তমান সময়টি গননা করে দেখবো এখন বাংলাদেশ টাইম কত। সেই টাইম অনুসারে ম্যাসেজ পরিবর্তিত হবে।
এছাড়া আমরা বিভিন্ন ডেটাকে সেট করে বিশেষ বিশেষ দিনে বিশেষ বিশেষ ম্যাসেজ প্রর্দশনের ব্যবস্থা করা হবে। header.php ফাইলটি খুলে প্রথম <div> Content_mid এর শেষে php ট্যাগ লক্ষ্য করুন । এখানে প্রথম ২টি echo তে কেউ Log-in করে থাকলে তার নাম দেখাতে বলা হয়েছে। এরপর $Current ভেরিয়েবলে দিন,মাস ও বছর দেখানো হয়েছে। এরপর যেহেতু বাংলাদেশের সময় হচ্ছে GMT+6 সেজন্য সেটি $timeset এর মধ্যে রাখা হয়েছে। এরপর $bdtime ভেরিয়েবলে data এর মধ্যে থেকে শুরুম্ন H=hour কে গননা করা হয়েছে। এরপর if লুপের মধ্যে ৩টি সময় অনুসারে দেখাতে বলা হয়েছে। কাজেই এ পর্যমত্ম নাম ও ম্যাসেজ পর্যমত্ম বলা হলো। এরপর php ট্যাগ শেষ করা হয়েছে। এখন আসুন নিচের কোড টুকু দেখুন My Index_final.php ফাইলের বর্ধিত কোডিং

<?php
     include ("include/header.php");
?>

<div id="content_mid"><span class="title">About Nova Computer</span><br />
  Look! Our product written by Bappi Ashraf. He has written various book about computer. And go on..Look! Our product written by Bappi Ashraf. He has written various book about computer. And go on.. Look! Our product written by Bappi Ashraf. He has written various book about computer. And go on..  Look! Our product written by Bappi Ashraf. He has written various book about computer. And go on..
  Bappi Ashraf is an actor and computer books author. He has written verious kind of computer books.
<?php
     echo "<br /> <font face='Verdana' size='4' color=red>
     <b>Welcome our site $name </b></font><br />";
     echo $_SESSION['bappi'];
    
     $current=date("d/m/y");
     $timeset=strtotime("+6 hour");
     $bdtime = date ("H");
     if ($bdtime < 12) {
     echo "&nbsp;&nbsp;Good Morning";
     }
     elseif ($bdtime < 16){
     echo "&nbsp;&nbsp;Good Afternoon";
     }
     elseif ($bdtime< 24){
     echo "&nbsp;&nbsp;Good Evening";
     }
?>

   ব্রাউজারে  নিচের মত ফলাফল পাওয়া যাবে।

এখন desktop এর ডানদিকে Time ট্যাবে ক্লিক করে সময় বদলে দিন এবং পেজটি Reload করুন। দেখুন ম্যাসেজ পাল্টে যাবে।

চলুন আরও একটু কোড সংযোজন করা যাক । নিচের কোডিং লক্ষ্য করুন
<?php
     echo "<br /> <font face='Verdana' size='4' color=red>
     <b>Welcome our site $name </b></font><br />";
     echo $_SESSION['bappi'];
    
     $current=date("d/m/y");
     $timeset=strtotime("+6 hour");
     $bdtime = date ("H");
     if ($bdtime < 12) {
     echo "&nbsp;&nbsp;Good Morning";
     }
     elseif ($bdtime < 16){
     echo "&nbsp;&nbsp;Good Afternoon";
     }
     elseif ($bdtime< 24){
     echo "&nbsp;&nbsp;Good Evening";

     }
$bdtime=date("l h:i:s A",$timeset);
$set1="16/12/13";
$set2="25/12/13";
$set3="21/02/13";

echo"<br /> Today is $current <br /> Now Bd Time is: $bdtime <br />";
if($current==$set1){
echo "<br /> <font face='Verdana' size='4' color=green>
<b>Welcome to Indepandent Day</b></font><br />";
}
if($current==$set2){
echo "<br /> <font face='Verdana' size='4' color=green>
<b>Welcome to Happy Crismass </b></font><br />";
}
if($current==$set3){
echo "<br /> <font face='Verdana' size='4' color=green>
<b>Welcome to International Mother Language Day </b></font><br />";
}

?>
দেখুন আবারও $bdtime=data L=দিন ও h:1:s=hour: minites: second সংযোগ করা হয়েছে timeste(GTM=time) সহ। এরপর তিনটি set ভেরিয়েবল নিয়ে ৩টি ডেটাকে সেট করা হয়েছে। ১৬ ডিসেম্বর, ২৫ শে ডিসেম্বর ও ২ শে ফেম্ন্রুয়ারী। এরপর echo তে $warrant $bdtime দেখাতে বলা হয়েছে। এবং set তিন if লুপ দিয়ে যাচাই করে তিনটি আলাদা ম্যাসেজ থেকে set এর সাথে মিলিয়ে ম্যাসেজ প্রর্দশন করতে বলা হয়েছে।
এখন আপনার কম্পিউটারের date পরিবর্তন করে ২৫ ডিসেম্বর করে পেজটি Reload করুন নিচের মত দেখা যাবে। এভাবে date পাল্টিয়ে দেখুন অন্য তারিখগুলোও  ফলপ্রসু হবে।



Previous Post                                                                                           Next Post

  বিস্তারিত জানতে নিচের বইটি সংগরহ করে নিন।

Book Name: Mastering Microsoft  Word
Writer: Bappi Ashraf
Published By: Gyankosh Prokashani
Amount of Pages: 464
First Publish: October-2004
Last Edition: We've February-2015 edition. Future edition may be existed!
Book Price: BDT 350 (30% Discount)
 The writer of this book has told that he has written this book with the concept of "teach yourself". On the other hand, Web Design is a thing which is interesting to learn. He has also told that the book is full of fan and enjoyment so that a person can learn Web Design by himself by playing with the example projects of this book.  Book's CD Link below... 

 cd