tag:blogger.com,1999:blog-26639639615749691342024-03-12T19:15:51.753-07:00Small things make a huge difference !!!!!!To note down small things I have learnt through my walk .....Avijit Bhattacharjeehttp://www.blogger.com/profile/08876674990575454487noreply@blogger.comBlogger16125tag:blogger.com,1999:blog-2663963961574969134.post-58834130079274627352018-03-29T09:37:00.003-07:002018-03-29T09:37:59.289-07:00How it feels like reading a book in a kindle reader?<div dir="ltr" style="text-align: left;" trbidi="on">
Recently I have a amazon kindle reader as gift from my little brother. Though I am in temptation to have one for 3 years. One of my friend recommended it to me. Reading pdf is not a good idea from smart screen. And all books are not available as hard-copy. I will put my overview about Kindle reader.<br />
<br />
Benefits<br />
----------<br />
<br />
<ol style="text-align: left;">
<li>Yes, It feels like reading a newspaper.</li>
<li>It is very light.</li>
<li>You don't have to remember where you left previous time.</li>
<li>You don't need your charger for 6-7 days read.</li>
<li>You can store unknown words as flash card and in future skim through the words and where in a book this appeared.</li>
<li>You can select a word to know its meaning from built-in oxford dictionary.</li>
<li>It can guess your required time to finish a book.</li>
<li>It can store 5mb of 800 ebooks.</li>
<li>It supports popular ebook formats like .epub .mobi and others.</li>
<li>Amazon keeps your library backed up to amazon cloud.</li>
<li>You have options of custom font and font size.</li>
</ol>
<div>
Problems</div>
<div>
-----------</div>
<div>
<ol style="text-align: left;">
<li>Amazon kinlde basic does not have backlit. Many user complain that because they can not read in dark. But in my opinion it makes it more like a book than another electronic device.</li>
<li>Yes Kindle supports PDF format. But it is not a good idea to read compact text figure books in pdf format in kindle. The limitation is not a problem with kindle. It is because of the nature of pdf format. To become portable pdf don't allow reformatting. So how can this fit in a small screen without zoom-in and zoom-out.</li>
<li>But you can convert pdf books with only texts to epub or mobi formats and enjoy them.</li>
</ol>
</div>
</div>
Avijit Bhattacharjeehttp://www.blogger.com/profile/08876674990575454487noreply@blogger.com0tag:blogger.com,1999:blog-2663963961574969134.post-44812385085052878482018-03-13T15:24:00.002-07:002018-03-29T08:21:49.378-07:00Simple tic-tac-toe game implementation using min-max algorithm<div dir="ltr" style="text-align: left;" trbidi="on">
Recently I have implemented tic-tac-toe game for my Artificial Intelligence Lab. For this purpose I have followed this article for enriching min-max algorithm knowledge and to get insight of tic-tac-toe actions.<br />
<br />
<a href="https://www.neverstopbuilding.com/blog/2013/12/13/tic-tac-toe-understanding-the-minimax-algorithm13">https://www.neverstopbuilding.com/blog/2013/12/13/tic-tac-toe-understanding-the-minimax-algorithm13</a><br />
<br />
Here is my C++ code for this article's pseudo code.<br />
<br />
<a href="https://github.com/avijit1258/AI_lab_codes/blob/master/tic_tac_toe.cpp">https://github.com/avijit1258/AI_lab_codes/blob/master/tic_tac_toe.cpp</a><br />
<br />
For better learning of alpha-beta pruning kindly follow Artificial Intelligence: A modern Approach By Peter Norvig and Russel<br />
<br /></div>
Avijit Bhattacharjeehttp://www.blogger.com/profile/08876674990575454487noreply@blogger.com0tag:blogger.com,1999:blog-2663963961574969134.post-10562397205940820332017-11-05T23:48:00.000-08:002018-06-24T02:13:45.605-07:00Productivity tools I love<div dir="ltr" style="text-align: left;" trbidi="on">
<br />
<ol style="text-align: left;">
<li>f.lux (for windows) & redshitf(for linux)</li>
<li>Pomodone app</li>
<li>StayFocusd (blocking disturbing sites)</li>
<li>Lastpass (password manager )</li>
<li>Evernote</li>
<li>medium.com to read more about topics I care</li>
<li>listen music on soundcloud.com</li>
<li>razam for screen recording</li>
<li>ted.com for ideas</li>
<li>trello.com for organizing projects</li>
<li>Google calendar for maintaining schedule</li>
<li>TexStudio for latex ide</li>
<li> Artha for looking up words meaning in pop-up</li>
</ol>
<a class="twitter-timeline" href="https://twitter.com/avijit1258?ref_src=twsrc%5Etfw">Tweets by avijit1258</a> <script async="" charset="utf-8" src="https://platform.twitter.com/widgets.js"></script>
<br />
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
</div>
Avijit Bhattacharjeehttp://www.blogger.com/profile/08876674990575454487noreply@blogger.com1tag:blogger.com,1999:blog-2663963961574969134.post-13613662379937771632017-10-06T02:46:00.002-07:002017-10-06T02:48:07.454-07:00NS2 network simulator pros and cons<div dir="ltr" style="text-align: left;" trbidi="on">
Installation<br />
------------------<br />
1. To install in Ubuntu-16.04 use the following commands<br />
<blockquote class="tr_bq">
sudo apt-get install ns2 </blockquote>
sudo apt-get install xgraph<br />
<br />
2. For installing nam you have to download it from here (in ubuntu repositories nam is depricated .<br />
<a href="https://drive.google.com/file/d/0B7S255p3kFXNNmtLeXhsaG5hXzQ/view?usp=sharing" target="_blank">Ubuntu 64 bits</a><br />
<a href="https://drive.google.com/file/d/0B7S255p3kFXNUkx0LVU1NnFVQTA/view?usp=sharing" target="_blank">Ubuntu 32 bits</a><br />
<br />
3. Now run the following command to install nam<br />
<blockquote class="tr_bq">
cd ~/Downloads</blockquote>
sudo dpkg --install nam_1.14_amd64.deb (for 64 bit ubuntu)<br />
sudo dpkg --install nam_1.15-10_i386.deb (for 32 bit ubuntu)<br />
<br />
4. Now restart you terminal and run the command<br />
<blockquote class="tr_bq">
ns</blockquote>
It will show % as output which indicates you have successfully installed ns2 program .<br />
<br />
To run a tcl program in ns2<br />
--------------------------------------------<br />
1. Download <a href="http://nile.wpi.edu/NS/Example/ns-simple.tcl" target="_blank">ns-simple.tcl </a> program . And run following commands in terminal<br />
<blockquote class="tr_bq">
cd ~/Downloads <br />
ns ns-simple.tcl </blockquote>
Now you should see the output in nam animator .<br />
<br />
For getting started with ns2<br />
---------------------------------------------<br />
1. For tutorial and documentation<br />
<a href="http://www.isi.edu/nsnam/ns/tutorial/" target="_blank">Tutorial</a><br />
<a href="http://www.isi.edu/nsnam/ns/doc/index.html" target="_blank">NS2 Documentation</a><br />
<br />
2. For 2000 examples of tcl program<br />
<br />
<a href="https://drive.google.com/file/d/0B7S255p3kFXNUUpUYWJ6TTdseWc/view?usp=sharing" target="_blank">https://drive.google.com/file/d/0B7S255p3kFXNUUpUYWJ6TTdseWc/view?usp=sharing</a><br />
<br />
<br />
Resource used<br />
-----------------------<br />
<a href="http://nile.wpi.edu/NS/simple_ns.html" target="_blank">http://nile.wpi.edu/NS/simple_ns.html</a><br />
<a href="https://www.linuxquestions.org/questions/ubuntu-63/installation-problem-in-nam-4175604400/#post5701136" target="_blank">https://www.linuxquestions.org/questions/ubuntu-63/installation-problem-in-nam-4175604400/#post5701136 </a><br />
<br />
<br /></div>
Avijit Bhattacharjeehttp://www.blogger.com/profile/08876674990575454487noreply@blogger.com0tag:blogger.com,1999:blog-2663963961574969134.post-12724794446101151452017-09-16T10:52:00.001-07:002017-10-06T02:50:29.913-07:00Windows Shortcut for different task<div dir="ltr" style="text-align: left;" trbidi="on">
<pre><code>JVM Bind exception solution while doing client-server application . To free an application from port busy problem. </code></pre>
<pre><code> </code></pre>
<pre><code>C:\Users\username>netstat -o -n -a | findstr 0.0:3000
TCP 0.0.0.0:3000 0.0.0.0:0 LISTENING 3116
C:\Users\username>taskkill /F /PID 3116</code></pre>
</div>
Avijit Bhattacharjeehttp://www.blogger.com/profile/08876674990575454487noreply@blogger.com1tag:blogger.com,1999:blog-2663963961574969134.post-24179012891544977982017-08-23T06:02:00.001-07:002017-10-06T02:51:21.897-07:00LInux utility <div dir="ltr" style="text-align: left;" trbidi="on">
1. For closing a freezed program<br />
<br />
Press ALT+F2 then run xkill command . Then a cross will appear at mouse cursor . Place this cursor to freezed program tab .<br />
<br />
2. For deleting files of a specific type<br />
<br />
<pre><code>find . -name "*.o" -type f -delete</code></pre>
</div>
Avijit Bhattacharjeehttp://www.blogger.com/profile/08876674990575454487noreply@blogger.com0tag:blogger.com,1999:blog-2663963961574969134.post-49193406447024276202017-08-12T20:39:00.002-07:002018-01-27T08:37:39.543-08:00Getting started with latex in ubuntu simple<div dir="ltr" style="text-align: left;" trbidi="on">
<ol style="text-align: left;">
<li><code>apt-get install texlive (for ubuntu)</code></li>
<li><code> </code><pre><code>\documentclass[a4paper,12pt]{article}
\begin{document}
The foundations of the rigorous study of \emph{analysis}
were laid in the nineteenth century, notably by the
mathematicians Cauchy and Weierstrass. Central to the
study of this subject are the formal definitions of
\emph{limits} and \emph{continuity}.
Let $D$ be a subset of $\bf R$ and let
$f \colon D \to \mathbf{R}$ be a real-valued function on
$D$. The function $f$ is said to be \emph{continuous} on
$D$ if, for all $\epsilon > 0$ and for all $x \in D$,
there exists some $\delta > 0$ (which may depend on $x$)
such that if $y \in D$ satisfies
\[ |y - x| < \delta \]
then
\[ |f(y) - f(x)| < \epsilon. \]
One may readily verify that if $f$ and $g$ are continuous
functions on $D$ then the functions $f+g$, $f-g$ and
$f.g$ are continuous. If in addition $g$ is everywhere
non-zero then $f/g$ is continuous.
\end{document}</code></pre>
<pre><code>
</code></pre>
<pre><code>Save this content to test.tex named file . </code></pre>
<pre><code> </code></pre>
<pre><code>3.</code><code>latex test.tex (for compiling)</code></pre>
<pre><code>4.</code><code><code>xdvi test.dvi & (for seeing output)</code></code></pre>
<pre><code><code>5.</code></code><code><code><code>pdflatex test.tex</code> </code> (for generating output)</code></pre>
<pre><code>6.htlatex text.tex (for getting output in html file)</code></pre>
<pre><code>To install htlatex in ubuntu type (sudo apt install tex4ht </code></pre>
<pre><code> </code></pre>
<pre><code><a href="https://stackoverflow.com/questions/1017055/get-started-with-latex-on-linux">source</a></code></pre>
<pre><code> </code></pre>
<pre><code><a href="http://www.maths.tcd.ie/~dwilkins/LaTeXPrimer/">http://www.maths.tcd.ie/~dwilkins/LaTeXPrimer/</a> </code></pre>
<pre><code> </code></pre>
<pre><code> </code></pre>
<code> </code></li>
</ol>
</div>
Avijit Bhattacharjeehttp://www.blogger.com/profile/08876674990575454487noreply@blogger.com1tag:blogger.com,1999:blog-2663963961574969134.post-7982355331871480432017-03-09T05:20:00.000-08:002017-03-09T05:40:05.508-08:00গিটহাবের অ-আ-ক-খ !!!!!<div dir="ltr" style="text-align: left;" trbidi="on">
১। প্রথমে git এর windows ক্লাইন্ট ডাউনলোড করে ইন্সটল করতে হবে ।<br />
<div>
<br /></div>
<div>
২। তারপর project ফোল্ডার সিলেক্ট করে ctrl+shift+right-click করি । তাহলে ওই ফোল্ডারে কমান্ড লাইন ওপেন হবে ।<br />
<br />
৩। এইবার git init কমান্ডটি রান করি ।<br />
<br />
৪। তারপর<br />
<br />
git add .<br />
<br />
git commit -m "change message"<br />
<br />
git remote add origin "put your github repository url"<br />
<br />
git push origin mater<br />
<br />
git pull origin master<br />
<br />
<br /></div>
</div>
Avijit Bhattacharjeehttp://www.blogger.com/profile/08876674990575454487noreply@blogger.com1tag:blogger.com,1999:blog-2663963961574969134.post-92233075344494156262017-02-28T06:17:00.004-08:002017-03-09T05:12:02.409-08:00লারাভেলে ডিবাগিং <div dir="ltr" style="text-align: left;" trbidi="on">
<div style="background-color: white; border: 0px; clear: both; color: #242729; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 15px; margin-bottom: 1em; padding: 0px;">
<br />
<br />
<br />
<br />
<br />
Try this command:</div>
<pre class="lang-php prettyprint prettyprinted" style="background-color: #eff0f1; border: 0px; color: #393318; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, sans-serif; font-size: 13px; margin-bottom: 1em; max-height: 600px; overflow: auto; padding: 5px; width: auto; word-wrap: normal;"><code style="border: 0px; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, sans-serif; margin: 0px; padding: 0px; white-space: inherit;"><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">php </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">-</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">S localhost</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">:</span><span class="lit" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">8000</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">-</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">t </span><span class="kwd" style="border: 0px; color: #101094; margin: 0px; padding: 0px;">public</span></code></pre>
<div style="background-color: white; border: 0px; clear: both; color: #242729; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 15px; margin-bottom: 1em; padding: 0px;">
Then execute it on browser, it will produce the error, just look at the error, and fix it.</div>
</div>
Avijit Bhattacharjeehttp://www.blogger.com/profile/08876674990575454487noreply@blogger.com0tag:blogger.com,1999:blog-2663963961574969134.post-38959338965038597702016-11-17T16:28:00.000-08:002016-11-17T16:28:31.501-08:00লারাভেল প্রজেক্ট হেরেকুতে ডিপ্লয় করবেন ?<div dir="ltr" style="text-align: left;" trbidi="on">
<br />
<ol style="text-align: left;">
<li>আপনার পিসিতে হেরেকুর কমান্ড লাইন টুল ইন্সটল করুন । তারপর opne comand line with ruby অ্যাপ ওপেন করি ।</li>
<li>এইবার লারাভেল প্রজেক্ট ফোল্ডারে ডিরেক্টরি পরিবর্তন করি । e.g. c:\users\ cd d/ g:\laravel_blog\</li>
<li>এইবার গিট ইনিসিয়ালাইজ করি আর add , commit করি। </li>
</ol>
<blockquote class="tr_bq">
<ol style="text-align: left;">
<li><pre style="background: rgb(67, 78, 86); border-radius: 3px; border: 1px solid rgb(63, 70, 76); box-sizing: border-box; color: #f8f8f8; font-family: Monaco, monospace; font-size: 13px; line-height: 18px; margin-bottom: 11px; margin-top: 5px; overflow: auto; padding: 12px; word-break: break-all; word-wrap: normal;"><span class="function" style="box-sizing: border-box;">$ git init
</span><span class="string" style="box-sizing: border-box; color: #adc6ee;">Initialized empty Git repository
</span><span class="prompt" style="box-sizing: border-box; color: #aeaeae;">$</span><span class="function" style="box-sizing: border-box;"> git add .
</span><span class="prompt" style="box-sizing: border-box; color: #aeaeae;">$</span><span class="function" style="box-sizing: border-box;"> git commit -m "new laravel project"</span></pre>
</li>
</ol>
</blockquote>
4. এইবার Procfile ফাইল অ্যাড করি আর change commit করি।<br />
<blockquote class="tr_bq">
<pre style="background: rgb(67, 78, 86); border-radius: 3px; border: 1px solid rgb(63, 70, 76); box-sizing: border-box; color: #f8f8f8; font-family: Monaco, monospace; font-size: 13px; line-height: 18px; margin-bottom: 11px; margin-top: 5px; overflow: auto; padding: 12px; word-break: break-all; word-wrap: normal;"><span class="function" style="box-sizing: border-box;"> echo web: vendor/bin/heroku-php-apache2 public/ > Procfile
</span><span class="prompt" style="box-sizing: border-box; color: #aeaeae;">$</span><span class="function" style="box-sizing: border-box;"> git add .
</span><span class="prompt" style="box-sizing: border-box; color: #aeaeae;">$</span><span class="function" style="box-sizing: border-box;"> git commit -m "Procfile for Heroku"
</span><span class="string" style="box-sizing: border-box; color: #adc6ee;">[master 1eb2be6] Procfile for Heroku
</span><span class="string" style="box-sizing: border-box; color: #adc6ee;"> 1 file changed, 1 insertion(+)
</span><span class="string" style="box-sizing: border-box; color: #adc6ee;"> create mode 100644 Procfile</span></pre>
</blockquote>
5.<br />
<blockquote class="tr_bq">
<pre style="background: rgb(67, 78, 86); border-radius: 3px; border: 1px solid rgb(63, 70, 76); box-sizing: border-box; color: #f8f8f8; font-family: Monaco, monospace; font-size: 13px; line-height: 18px; margin-bottom: 11px; margin-top: 5px; overflow: auto; padding: 12px; word-break: break-all; word-wrap: normal;"><span class="function" style="box-sizing: border-box;"> heroku create app_name</span></pre>
</blockquote>
<br />
6. Give proper email and password for your hereku account .<br />
7. Add build pack<br />
<blockquote class="tr_bq">
<pre style="background: rgb(67, 78, 86); border-radius: 3px; border: 1px solid rgb(63, 70, 76); box-sizing: border-box; color: #f8f8f8; font-family: Monaco, monospace; font-size: 13px; line-height: 18px; margin-bottom: 11px; margin-top: 5px; overflow: auto; padding: 12px; word-break: break-all; word-wrap: normal;"><span class="function" style="box-sizing: border-box;"> heroku buildpacks:set heroku/php
</span><span class="string" style="box-sizing: border-box; color: #adc6ee;">Buildpack set. Next release on app_name will use heroku/php.
</span><span class="string" style="box-sizing: border-box; color: #adc6ee;">Run `git push heroku master` to create a new release using this buildpack.</span></pre>
</blockquote>
<span style="background-color: #f5f5f7; color: #3f3f44; font-family: "menlo" , "monaco" , "consolas" , "courier new" , monospace; font-size: 14.4px;">php artisan key:generate --show</span><br />
<pre style="background: rgb(67, 78, 86); border-radius: 3px; border: 1px solid rgb(63, 70, 76); box-sizing: border-box; color: #f8f8f8; font-family: Monaco, monospace; font-size: 13px; line-height: 18px; margin-bottom: 11px; margin-top: 5px; overflow: auto; padding: 12px; word-break: break-all; word-wrap: normal;">$ heroku config:set APP_KEY=generated key </pre>
<pre style="background: rgb(67, 78, 86); border-radius: 3px; border: 1px solid rgb(63, 70, 76); box-sizing: border-box; color: #f8f8f8; font-family: Monaco, monospace; font-size: 13px; line-height: 18px; margin-bottom: 11px; margin-top: 5px; overflow: auto; padding: 12px; word-break: break-all; word-wrap: normal;">git push heroku master</pre>
<pre style="background: rgb(67, 78, 86); border-radius: 3px; border: 1px solid rgb(63, 70, 76); box-sizing: border-box; color: #f8f8f8; font-family: Monaco, monospace; font-size: 13px; line-height: 18px; margin-bottom: 11px; margin-top: 5px; overflow: auto; padding: 12px; word-break: break-all; word-wrap: normal;"><pre style="background-color: #ecf0f1; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-shadow: rgba(0, 0, 0, 0.0588235) 0px 0px 10px; box-sizing: border-box; color: #7b8a8b; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; font-size: 14px; line-height: 1.42857; margin-bottom: 10.5px; overflow: auto; padding: 10px; word-break: break-all; word-wrap: break-word;"><code style="background-color: transparent; border-radius: 0px; box-sizing: border-box; color: inherit; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; font-size: inherit; padding: 0px; white-space: pre-wrap;"> heroku addons:add heroku-postgresql:hobby-dev (for adding database free)</code></pre>
</pre>
<pre style="background: rgb(67, 78, 86); border-radius: 3px; border: 1px solid rgb(63, 70, 76); box-sizing: border-box; color: #f8f8f8; font-family: Monaco, monospace; font-size: 13px; line-height: 18px; margin-bottom: 11px; margin-top: 5px; overflow: auto; padding: 12px; word-break: break-all; word-wrap: normal;"><pre style="background-color: #ecf0f1; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-shadow: rgba(0, 0, 0, 0.0588235) 0px 0px 10px; box-sizing: border-box; color: #7b8a8b; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; font-size: 14px; line-height: 1.42857; margin-bottom: 10.5px; overflow: auto; padding: 10px; word-break: break-all; word-wrap: break-word;"><code style="background-color: transparent; border-radius: 0px; box-sizing: border-box; color: inherit; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; font-size: inherit; padding: 0px; white-space: pre-wrap;"> heroku config --app app_name (for getting database info in this format </code>DATABASE_URL: postgres://USERNAME:PASSWORD@HOSTNAME:PORT/DATABASE)</pre>
</pre>
Add this details to config/database.php and .env<br />
then <span style="color: inherit; font-family: "menlo" , "monaco" , "consolas" , "courier new" , monospace; font-size: inherit; white-space: pre-wrap;">$ </span><br />
<pre style="background-color: #ecf0f1; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-shadow: rgba(0, 0, 0, 0.0588235) 0px 0px 10px; box-sizing: border-box; color: #7b8a8b; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; font-size: 14px; line-height: 1.42857; margin-bottom: 10.5px; overflow: auto; padding: 10px; word-break: break-all; word-wrap: break-word;"><code style="background-color: transparent; border-radius: 0px; box-sizing: border-box; color: inherit; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; font-size: inherit; padding: 0px; white-space: pre-wrap;">git add .</code></pre>
<pre style="background-color: #ecf0f1; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-shadow: rgba(0, 0, 0, 0.0588235) 0px 0px 10px; box-sizing: border-box; color: #7b8a8b; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; font-size: 14px; line-height: 1.42857; margin-bottom: 10.5px; overflow: auto; padding: 10px; word-break: break-all; word-wrap: break-word;"><code style="background-color: transparent; border-radius: 0px; box-sizing: border-box; color: inherit; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; font-size: inherit; padding: 0px; white-space: pre-wrap;">$ git commit -m "Updated database configuration"
$ git push heroku master</code></pre>
<br /></div>
Avijit Bhattacharjeehttp://www.blogger.com/profile/08876674990575454487noreply@blogger.com0tag:blogger.com,1999:blog-2663963961574969134.post-72943769195052275112016-08-10T06:36:00.000-07:002016-11-17T16:30:24.261-08:00কিভাবে রুবি অন রেইলস উইন্ডোজে ইন্সটল করবেন ?<div dir="ltr" style="text-align: left;" trbidi="on">
১। প্রথমে <a href="https://rubyinstaller.com/">https://rubyinstaller.com</a> থেকে windows এর জন্য rubyinstaller.exe file টি ডাউনলোড করুন । ফাইলটির পরিমাণ ১০৫mb এর কাছাকাছি ।<br />
<br />
২। ইন্সটলেশনের সময় git আর ruby এর জন্য পাথ ভেরিয়েবল সিলেক্ট করে দেই ।<br />
<br />
৩। তারপর যে কোন টেক্সট এডিটর দিয়ে <span style="background-color: #eff0f1; color: #242729; font-family: "consolas" , "menlo" , "monaco" , "lucida console" , "liberation mono" , "dejavu sans mono" , "bitstream vera sans mono" , "courier new" , monospace , sans-serif; font-size: 13px; line-height: 16.9px; white-space: pre-wrap;">C:\RailsInstaller\Ruby2.2.0\bin\rails.bat এই ফাইলটি ওপেন করি ।</span><br />
<span style="background-color: #eff0f1; color: #242729; font-family: "consolas" , "menlo" , "monaco" , "lucida console" , "liberation mono" , "dejavu sans mono" , "bitstream vera sans mono" , "courier new" , monospace , sans-serif; font-size: 13px; line-height: 16.9px; white-space: pre-wrap;"><br /></span>
৪। এইবার ফাইলের লেখাগুলি ডিলিট করি ।<br />
<blockquote class="tr_bq">
<pre class="lang-rb prettyprint prettyprinted" style="background-color: #eff0f1; border: 0px; color: #393318; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, sans-serif; font-size: 13px; margin-bottom: 1em; max-height: 600px; overflow: auto; padding: 5px; width: auto; word-wrap: normal;"><code style="border: 0px; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, sans-serif; margin: 0px; padding: 0px; white-space: inherit;"><span class="lit" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">@ECHO</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> OFF
IF NOT </span><span class="str" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">"%~f0"</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">==</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="str" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">"~f0"</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> GOTO </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">:</span><span class="typ" style="border: 0px; color: #2b91af; margin: 0px; padding: 0px;">WinNT</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">
</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">@</span><span class="str" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">"C:\Users\emachnic\GitRepos\railsinstaller-windows\stage\Ruby2.2.0\bin\ruby.exe"</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="str" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">"C:/Users/emachnic/GitRepos/railsinstaller-windows/stage/Ruby2.2.0/bin/tilt"</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">%</span><span class="lit" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">1</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">%</span><span class="lit" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">2</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">%</span><span class="lit" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">3</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">%</span><span class="lit" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">4</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">%</span><span class="lit" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">5</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">%</span><span class="lit" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">6</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">%</span><span class="lit" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">7</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">%</span><span class="lit" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">8</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">%</span><span class="lit" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">9</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">
GOTO </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">:</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">EOF
</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">:</span><span class="typ" style="border: 0px; color: #2b91af; margin: 0px; padding: 0px;">WinNT</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">
</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">@</span><span class="str" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">"C:\Users\emachnic\GitRepos\railsinstaller-windows\stage\Ruby2.2.0\bin\ruby.exe"</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="str" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">"%~dpn0"</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">%*</span></code></pre>
</blockquote>
৫। এইবার নিচের কোডগুলি পেস্ট করি ।<br />
<blockquote class="tr_bq">
<pre class="lang-rb prettyprint prettyprinted" style="background-color: #eff0f1; border: 0px; color: #393318; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, sans-serif; font-size: 13px; margin-bottom: 1em; max-height: 600px; overflow: auto; padding: 5px; width: auto; word-wrap: normal;"><code style="border: 0px; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, sans-serif; margin: 0px; padding: 0px; white-space: inherit;"><span class="lit" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">@ECHO</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> OFF
IF NOT </span><span class="str" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">"%~f0"</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">==</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="str" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">"~f0"</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> GOTO </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">:</span><span class="typ" style="border: 0px; color: #2b91af; margin: 0px; padding: 0px;">WinNT</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">
ECHO</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">.</span><span class="typ" style="border: 0px; color: #2b91af; margin: 0px; padding: 0px;">This</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> version of </span><span class="typ" style="border: 0px; color: #2b91af; margin: 0px; padding: 0px;">Ruby</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> has </span><span class="kwd" style="border: 0px; color: #101094; margin: 0px; padding: 0px;">not</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> been built with support </span><span class="kwd" style="border: 0px; color: #101094; margin: 0px; padding: 0px;">for</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="typ" style="border: 0px; color: #2b91af; margin: 0px; padding: 0px;">Windows</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="lit" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">95</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">/</span><span class="lit" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">98</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">/</span><span class="typ" style="border: 0px; color: #2b91af; margin: 0px; padding: 0px;">Me</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">.</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">
GOTO </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">:</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">EOF
</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">:</span><span class="typ" style="border: 0px; color: #2b91af; margin: 0px; padding: 0px;">WinNT</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">
</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">@</span><span class="str" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">"%~dp0ruby.exe"</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="str" style="border: 0px; color: #7d2727; margin: 0px; padding: 0px;">"%~dpn0"</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">%*</span></code></pre>
</blockquote>
৬ । নতুন rails প্রোজেক্ট খুলতে কমান্ড লাইনে নিচের কোডটি রান করুন<br />
<blockquote class="tr_bq">
rails new HelloRails -d mysql</blockquote>
৭। এইবার প্রোজেক্ট রান করতে নিচের লাইনটি লিখুন ।<br />
<blockquote class="tr_bq">
cd HelloRails</blockquote>
৮। এইবার ডাটাবেজ create করতে নিচের কমান্ডটি লিখি ।<br />
<blockquote class="tr_bq">
rake db:create </blockquote>
৯। এইবার সাইটি রান করতে লিখুন<br />
rails server<br />
<blockquote class="tr_bq">
</blockquote>
<br />
<blockquote class="tr_bq">
</blockquote>
</div>
Avijit Bhattacharjeehttp://www.blogger.com/profile/08876674990575454487noreply@blogger.com0tag:blogger.com,1999:blog-2663963961574969134.post-52468397990548408132016-07-25T13:28:00.004-07:002017-06-26T03:27:48.722-07:00সি-প্লাস-প্লাস নোট<div dir="ltr" style="text-align: left;" trbidi="on">
<div>
<span style="font-size: large;">// </span></div>
<span style="font-size: large;"><i>string st;</i></span><br />
<div>
<span style="font-size: large;"><i>cin >> st; // Input "Apu"</i></span></div>
<div>
<span style="font-size: large;"><i><br /></i></span></div>
<div>
<span style="font-size: large;"><i>cout << st.at(1) << endl; //output "p"</i></span></div>
<div>
<span style="font-size: large;"><br /></span></div>
<div>
<span style="font-size: large;">//includes all c , cpp libraries</span></div>
<div>
<span style="font-size: large;">#include <bits/stdc++.h></span></div>
<div>
<span style="font-size: large;"><br /></span></div>
<div>
<span style="font-size: large;"><br /></span></div>
<div>
<span style="font-size: large;">// getting a line of string cpp</span></div>
<div>
<span style="font-size: large;"><i>string st;</i></span></div>
<div>
<span style="font-size: large;"><i><br /></i></span></div>
<div>
<span style="font-size: large;"><i>getline(cin , st);//input "I love cpp"</i></span></div>
<div>
<span style="font-size: large;"><i><br /></i></span></div>
<div>
<span style="font-size: large;"><i>cout << st << endl; //output "I love cpp"</i></span></div>
<div>
<span style="font-size: large;"><br /></span></div>
<div>
<span style="font-size: large;"><br /></span></div>
<div>
<span style="font-size: large;">//if a char in string is letters</span></div>
<div>
<br /></div>
<div>
<span style="font-size: large;"><i>string st;</i></span></div>
<div>
<span style="font-size: large;"><i>cin >> st;</i></span></div>
<div>
<span style="font-size: large;"><i><br /></i></span></div>
<div>
<span style="font-size: large;"><i>if(isalpha(st.at(0)))</i></span></div>
<div>
<span style="font-size: large;"><i> cout << "Letters" << endl;</i></span></div>
<div>
<span style="font-size: large;"><br /></span>
<span style="font-size: large;">//initializing array with a value</span><br />
<span style="font-size: large;"><br /></span>
<span style="font-size: large;"><i>int row[8];</i></span><br />
<i><span style="font-size: large;"><br /></span>
<span style="font-size: large;">memset(row, 0 , sizeof(row));//it initializes row array with 0 value</span></i><br />
<span style="font-size: large;"><br /></span>
<span style="font-size: large;"></span><br />
<pre class="lang-c prettyprint prettyprinted" style="background-color: #eff0f1; border: 0px; color: #393318; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, sans-serif; font-size: 13px; font-stretch: inherit; font-variant-numeric: inherit; line-height: inherit; margin-bottom: 1em; max-height: 600px; overflow: auto; padding: 5px; vertical-align: baseline; width: auto; word-wrap: normal;"><code style="border: 0px; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, sans-serif; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline; white-space: inherit;"><span class="pln" style="border: 0px; color: #303336; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">memset</span><span class="pun" style="border: 0px; color: #303336; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="pln" style="border: 0px; color: #303336; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">array</span><span class="pun" style="border: 0px; color: #303336; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">,</span><span class="pln" style="border: 0px; color: #303336; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"> </span><span class="lit" style="border: 0px; color: #7d2727; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">0</span><span class="pun" style="border: 0px; color: #303336; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">,</span><span class="pln" style="border: 0px; color: #303336; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"> </span><span class="kwd" style="border: 0px; color: #101094; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">sizeof</span><span class="pun" style="border: 0px; color: #303336; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">(</span><span class="pln" style="border: 0px; color: #303336; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">array</span><span class="pun" style="border: 0px; color: #303336; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">[</span><span class="lit" style="border: 0px; color: #7d2727; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">0</span><span class="pun" style="border: 0px; color: #303336; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">][</span><span class="lit" style="border: 0px; color: #7d2727; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">0</span><span class="pun" style="border: 0px; color: #303336; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">])</span><span class="pln" style="border: 0px; color: #303336; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"> </span><span class="pun" style="border: 0px; color: #303336; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">*</span><span class="pln" style="border: 0px; color: #303336; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"> m </span><span class="pun" style="border: 0px; color: #303336; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">*</span><span class="pln" style="border: 0px; color: #303336; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"> n</span><span class="pun" style="border: 0px; color: #303336; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">); where m and n is height and width</span></code></pre>
<span style="font-size: large;"><br /></span>
<span style="font-size: large;">//getting max value of an array</span><br />
<span style="font-size: large;"><br /></span>
<span style="font-size: large;"><i>int ara[5] = {9, 1 , 2, 3, 5};</i></span><br />
<span style="font-size: large;"><i>int max = *max_element(ara, ara+5);// max = 9</i></span><br />
<span style="font-size: large;"><br /></span>
<span style="font-size: large;">//using pair in vector</span><br />
<span style="font-size: large;"><br /></span>
<span style="font-size: large;"><i>vector<pair<int , bool > > v;</i></span><br />
<i><span style="font-size: large;"><br /></span>
<span style="font-size: large;">v.push_back(make_pair(3, 5));</span></i><br />
<span style="font-size: large;"><i>for(vector<pair<int, bool> >::iterator it = v.begin() ; it != v.end() ; it++)</i></span><br />
<span style="font-size: large;"><i>{</i></span><br />
<span style="font-size: large;"><i> cout << it->first << endl;//output 3</i></span><br />
<span style="font-size: large;"><i> cout << it->second << endl;output 5</i></span><br />
<span style="font-size: large;"><i>}</i></span><br />
<br /></div>
<div>
<span style="background-color: white;"><br /></span>
<span style="background-color: white; font-size: large;">//how to know how many values in an array is less than or equal a value</span><br />
<span style="background-color: white; font-size: large;"><br /></span>
<span style="background-color: white; font-size: large;"> <i> int a[5] = {1, 3, 7 , 8 , 9};</i></span><br />
<span style="background-color: white; font-size: large;"><i> cout << upper_bound(a, a+5, 8)-a << endl;//output 4 cause there are 4 values <= 8 in the array</i></span><br />
<span style="background-color: white; font-size: large;"><i> cout << lower_bound(a, a+5, 9)-a << endl;//output 4 cause there are 4 values < 9 in the array</i></span><br />
<span style="background-color: white;"><br /></span>
<br />
<div style="text-align: left;">
<span style="background-color: white; font-size: large;">//how to take input line of integers in an array where number of integers is unknown</span></div>
<div style="text-align: left;">
<span style="background-color: #6aa84f; font-size: large;"><br /></span></div>
<blockquote class="tr_bq" style="text-align: left;">
<span style="background-color: white; font-size: large;"><i>string st;</i></span><br />
<span style="background-color: white; font-size: large;"><i>int ara[100], n;</i></span><br />
<span style="background-color: white; font-size: large;"><i><br /></i></span>
<span style="background-color: white; font-size: large;"><i>getline(cin , st); //12 23 5 6 8</i></span><br />
<span style="background-color: white; font-size: large;"><i>n = 0;</i></span><br />
<span style="background-color: white; font-size: large;"><i>istringstream is(st);</i></span><br />
<span style="background-color: white; font-size: large;"><i>while(cin>>ara[n])n++;</i></span><br />
<span style="background-color: white; font-size: large;"><i>for(int i = 0; ara[i] ; i++)</i></span><br />
<span style="background-color: white; font-size: large;"><i>{</i></span><br />
<span style="background-color: white; font-size: large;"><i> cout << ara[i] << " "; // 12 23 5 6 8</i></span></blockquote>
<i> }</i><br />
<i><br /></i>
<i><br /></i>
<i>//for iterating Through A map and nesting vector or map</i><br />
<i><br /></i>
<br />
<pre class="lang-cpp prettyprint prettyprinted" style="background-color: #eff0f1; border: 0px; color: #393318; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, sans-serif; font-size: 13px; margin-bottom: 1em; max-height: 600px; overflow: auto; padding: 5px; width: auto; word-wrap: normal;"><code style="border: 0px; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, sans-serif; margin: 0px; padding: 0px; white-space: inherit;"><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">std</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">::</span><span class="typ" style="border: 0px; color: #2b91af; margin: 0px; padding: 0px;">map</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"><</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">std</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">::</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">string</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">,</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> std</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">::</span><span class="typ" style="border: 0px; color: #2b91af; margin: 0px; padding: 0px;">map</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"><</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">std</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">::</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">string</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">,</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> std</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">::</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">string</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">>></span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> mymap</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">;</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">
</span><span class="kwd" style="border: 0px; color: #101094; margin: 0px; padding: 0px;">for</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">(</span><span class="kwd" style="border: 0px; color: #101094; margin: 0px; padding: 0px;">auto</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="kwd" style="border: 0px; color: #101094; margin: 0px; padding: 0px;">const</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">&</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">ent1 </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">:</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> mymap</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">)</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">{</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">
</span><span class="com" style="border: 0px; color: #858c93; margin: 0px; padding: 0px;">// ent1.first is the first key</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">
</span><span class="kwd" style="border: 0px; color: #101094; margin: 0px; padding: 0px;">for</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">(</span><span class="kwd" style="border: 0px; color: #101094; margin: 0px; padding: 0px;">auto</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="kwd" style="border: 0px; color: #101094; margin: 0px; padding: 0px;">const</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">&</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">ent2 </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">:</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> ent1</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">.</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">second</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">)</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;"> </span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">{</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">
</span><span class="com" style="border: 0px; color: #858c93; margin: 0px; padding: 0px;">// ent2.first is the second key</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">
</span><span class="com" style="border: 0px; color: #858c93; margin: 0px; padding: 0px;">// ent2.second is the data</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">
</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">}</span><span class="pln" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">
</span><span class="pun" style="border: 0px; color: #303336; margin: 0px; padding: 0px;">}</span></code></pre>
<i><br /></i>
<i>//for knowing number of 1 bits in a integer</i><br />
<i></i><br />
<i></i><br />
<i></i><br />
<i></i><br />
<i>int num_of_bits = __builtin_popcount(2)//2 = 00000010</i><br />
<i>cout << num_of_bits << endl; // output is one</i>
<i><br /></i>
<i><br /></i>
<i><br /></i>
<i><br /></i></div>
</div>
Avijit Bhattacharjeehttp://www.blogger.com/profile/08876674990575454487noreply@blogger.com0tag:blogger.com,1999:blog-2663963961574969134.post-4735433500271428462016-05-19T19:00:00.001-07:002016-07-25T13:10:04.873-07:00লারাভেলের(laravel) মাধ্যমে মাল্টিপল(multiple) টেবিল অথেনটিকেশন(authentication) যেমন ইউজার আর আডমিন টেবিলের মাধ্যমে ইউজারকে যাচাই করে ইউজার হলে একরকম আর আডমিন হলে আরেকরকম পেজে রিডিরেক্ট করা যায় তা দেখব।<div dir="ltr" style="text-align: left;" trbidi="on">
আমি লারাভেল৫.২ (laravel 5.2) এর জন্য মাল্টিপল টেবিল অথেনটিকেশনের কাজটি করছি । <br />
১ । প্রথমে লারাভেলের ফ্রেশ ইন্সটলেশন রেডি করি । যেহেতু ইউজার(user) টেবিল ইন্সটলেশনের সাথেই আসে , তাই আমাদেরকে অ্যাডমিন() টেবিল তৈরি করতে হবে । এখন আমরা আডমিন টেবিলের জন্য মাইগ্রেশন টেবিল তৈরি করব । তাই কমান্ড লাইনে লিখি<br />
<blockquote class="tr_bq">
php artisan make:migration create_admins_table</blockquote>
২। ইউজার টেবিলের মাইগ্রেশনের মত করে অ্যাডমিন টেবিলের মাইগ্রেশন তৈরি করি ।<br />
৩। তারপর টেবিলগুলা মাইগ্রেট করি php artisan migrate দিয়ে । এখন অ্যাডমিনের জন্য মডেল তৈরি করি php artisan make:model Admin । মডেলটি ইলোকুয়েণ্ট ক্লাসের কিন্তু আমাদের কাজের জন্য মডেলটিকে অথেন্টিকেবল ক্লাসের হতে হবে । তাই আমরা অ্যাডমিন মডেলকে এইভাবে পরিবর্তন করি ।<br />
<blockquote class="tr_bq">
<blockquote class="tr_bq">
<?php<br />
<br />
namespace App;<br />
<br />
use Illuminate\Foundation\Auth\User as Authenticatable;<br />
<br />
class Admin extends Authenticatable<br />
{<br />
protected $fillable = [<br />
'name', 'email', 'password',<br />
];<br />
protected $hidden = [<br />
'password', 'remember_token',<br />
];<br />
protected $guard = "admins";<br />
}</blockquote>
</blockquote>
৪। এখন config/auth.php ফাইলটিকে পরিবর্তন করে এইরকম করি<br />
<blockquote class="tr_bq">
<div class="crayon-pre" style="-moz-tab-size: 4; -o-tab-size: 4; -webkit-tab-size: 4; font-size: 14px !important; line-height: 20px !important; tab-size: 4;">
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-1">
<span class="crayon-ta"><?php</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-2">
</div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-3">
<span class="crayon-k ">return</span><span class="crayon-h"> </span><span class="crayon-sy">[</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-4">
</div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-5">
<span class="crayon-h"> </span><span class="crayon-s">'defaults'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-sy">[</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-6">
<span class="crayon-h"> </span><span class="crayon-s">'guard'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-s">'web'</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-7">
<span class="crayon-h"> </span><span class="crayon-s">'passwords'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-s">'users'</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-8">
<span class="crayon-h"> </span><span class="crayon-sy">]</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-9">
</div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-10">
<span class="crayon-h"> </span><span class="crayon-s">'guards'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-sy">[</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-11">
<span class="crayon-h"> </span><span class="crayon-s">'web'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-sy">[</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-12">
<span class="crayon-h"> </span><span class="crayon-s">'driver'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-s">'session'</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-13">
<span class="crayon-h"> </span><span class="crayon-s">'provider'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-s">'users'</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-14">
<span class="crayon-h"> </span><span class="crayon-sy">]</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-15">
</div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-16">
<span class="crayon-h"> </span><span class="crayon-s">'api'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-sy">[</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-17">
<span class="crayon-h"> </span><span class="crayon-s">'driver'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-s">'token'</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-18">
<span class="crayon-h"> </span><span class="crayon-s">'provider'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-s">'users'</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-19">
<span class="crayon-h"> </span><span class="crayon-sy">]</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-20">
<span class="crayon-h"> </span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-21">
<span class="crayon-h"> </span><span class="crayon-c">// For admin</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-22">
<span class="crayon-h"> </span><span class="crayon-s">'admins'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-sy">[</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-23">
<span class="crayon-h"> </span><span class="crayon-s">'driver'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-s">'session'</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-24">
<span class="crayon-h"> </span><span class="crayon-s">'provider'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-s">'admins'</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-25">
<span class="crayon-h"> </span><span class="crayon-sy">]</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-26">
<span class="crayon-h"> </span><span class="crayon-sy">]</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-27">
</div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-28">
<span class="crayon-h"> </span><span class="crayon-s">'providers'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-sy">[</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-29">
<span class="crayon-h"> </span><span class="crayon-s">'users'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-sy">[</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-30">
<span class="crayon-h"> </span><span class="crayon-s">'driver'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-s">'eloquent'</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-31">
<span class="crayon-h"> </span><span class="crayon-s">'model'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-i">App</span><span class="crayon-sy">\</span><span class="crayon-e">User::</span><span class="crayon-t">class</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-32">
<span class="crayon-h"> </span><span class="crayon-sy">]</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-33">
<span class="crayon-h"> </span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-34">
<span class="crayon-h"> </span><span class="crayon-c">// For admin</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-35">
<span class="crayon-h"> </span><span class="crayon-s">'admins'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-sy">[</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-36">
<span class="crayon-h"> </span><span class="crayon-s">'driver'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-s">'eloquent'</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-37">
<span class="crayon-h"> </span><span class="crayon-s">'model'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-i">App</span><span class="crayon-sy">\</span><span class="crayon-e">Admin::</span><span class="crayon-t">class</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-38">
<span class="crayon-h"> </span><span class="crayon-sy">]</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-39">
<span class="crayon-h"> </span><span class="crayon-sy">]</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-40">
</div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-41">
<span class="crayon-h"> </span><span class="crayon-s">'passwords'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-sy">[</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-42">
<span class="crayon-h"> </span><span class="crayon-s">'users'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-sy">[</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-43">
<span class="crayon-h"> </span><span class="crayon-s">'provider'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-s">'users'</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-44">
<span class="crayon-h"> </span><span class="crayon-s">'email'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-s">'auth.emails.password'</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-45">
<span class="crayon-h"> </span><span class="crayon-s">'table'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-s">'password_resets'</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-46">
<span class="crayon-h"> </span><span class="crayon-s">'expire'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-cn">60</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-47">
<span class="crayon-h"> </span><span class="crayon-sy">]</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-48">
<span class="crayon-h"> </span><span class="crayon-s">'admins'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-sy">[</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-49">
<span class="crayon-h"> </span><span class="crayon-s">'provider'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-s">'admins'</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-50">
<span class="crayon-h"> </span><span class="crayon-s">'email'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-s">'auth.emails.password'</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-51">
<span class="crayon-h"> </span><span class="crayon-s">'table'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-s">'password_resets'</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-52">
<span class="crayon-h"> </span><span class="crayon-s">'expire'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-cn">60</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-53">
<span class="crayon-h"> </span><span class="crayon-sy">]</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-54">
<span class="crayon-h"> </span><span class="crayon-sy">]</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-55">
</div>
<div class="crayon-line" id="crayon-573e5fb60a88d062135486-56">
<span class="crayon-sy">]</span><span class="crayon-sy">;</span></div>
</div>
</blockquote>
৫। অ্যাডমিন মডেলে গার্ড ঠিক করে দিতে হবে । <br />
<div class="crayon-pre" style="-moz-tab-size: 4; -o-tab-size: 4; -webkit-tab-size: 4; font-size: 14px !important; line-height: 20px !important; tab-size: 4;">
<div class="crayon-line" id="crayon-573e5fb60a892218106541-1">
<span class="crayon-m"> protected</span><span class="crayon-h"> </span><span class="crayon-v">$guard</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-s">"admins"</span><span class="crayon-sy">;</span></div>
<div class="crayon-line" id="crayon-573e5fb60a892218106541-1">
<span class="crayon-sy">৬। এখন আমরা লারাভেলের ডিফ্লট বয়লারপ্লেট ব্যবহার করে অথেনটিকেশন তৈরি করব । ফলে</span></div>
<div class="crayon-line" id="crayon-573e5fb60a892218106541-1">
<span class="crayon-sy"> php artisan make:auth</span></div>
</div>
আমাদের জন্য দরকারি ফর্ম ও কন্টোলার তৈরি হয়ে যাবে ।<br />
৭।এখন আমরা প্রজেক্ট রান করে লগইন আর রেজিস্টার করলে তা ইউজার টেবিলে জমা হবে । কারন config/auth.php তে ডিফ্লট হিসেবে আছে<br />
<blockquote class="tr_bq">
<div class="crayon-pre" style="-moz-tab-size: 4; -o-tab-size: 4; -webkit-tab-size: 4; font-size: 14px !important; line-height: 20px !important; tab-size: 4;">
<div class="crayon-line" id="crayon-573e5fb60a897797662657-1">
<span class="crayon-s">'defaults'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-sy">[</span></div>
<div class="crayon-line" id="crayon-573e5fb60a897797662657-2">
<span class="crayon-h"> </span><span class="crayon-s">'guard'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-s">'web'</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a897797662657-3">
<span class="crayon-h"> </span><span class="crayon-s">'passwords'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-s">'users'</span><span class="crayon-sy">,</span></div>
<div class="crayon-line" id="crayon-573e5fb60a897797662657-4">
<span class="crayon-sy">]</span><span class="crayon-sy">,</span></div>
</div>
</blockquote>
এখন আমরা যদি ডিফ্লট অ্যারেকে পরিবর্তন করে users এর পরিবর্তে admins ব্যবহার করি তাহলে আমরা লগইন আর রেজিস্টার করলে তা অ্যাডমিন টেবিলে জমা হবে এবং চেক করবে ।<br />
৮। ইউজার ডিফল্ট হিসেবে থাকলে অ্যাডমিনের কাজ করতে হলে Auth::guard('admins')->user(), <br />
<div class="crayon-line" id="crayon-573e5fb60a899377986203-7">
<span class="crayon-e">Auth::</span><span class="crayon-e">guard</span><span class="crayon-sy">(</span><span class="crayon-s">'admins'</span><span class="crayon-sy">)</span><span class="crayon-o">-></span><span class="crayon-e">attempt</span><span class="crayon-sy">(</span><span class="crayon-sy">[</span><span class="crayon-s">'email'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-s">''</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'password'</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-s">''</span><span class="crayon-sy">]</span><span class="crayon-sy">)</span></div>
, Auth::guard('admins')->check()<br />
Auth ফ্যাস্কেডে গার্ড ইউজ করতে হবে ।<br />
<br />
<br />
</div>
Avijit Bhattacharjeehttp://www.blogger.com/profile/08876674990575454487noreply@blogger.com0tag:blogger.com,1999:blog-2663963961574969134.post-42351754087478285552016-05-13T08:34:00.001-07:002016-07-25T13:14:53.951-07:00কেমন হত যদি mysql workbench অথবা xampp এ ডিজাইন করা ডাটাবেজ থেকে সরাসরি লারাভেল মডেল , মাইগ্রেশন তৈরি করা যেত ? কি জাদু মনে হচ্ছে ? হ্যা পিএইচপি কমিউনিটি এই জাদু দেখাতে পারে । আসুন আজকে সেই জাদু দেখা যাক ।<div dir="ltr" style="text-align: left;" trbidi="on">
১। প্রথমে লারাভেলের প্রজেক্টের একটি ফ্রেশ ইন্সটলেশন সম্পন্ন করুন । কিভাবে করবেন ? <a href="http://laralearn.blogspot.com/2016/04/blog-post_29.html">এই লেখাটি অনুসরণ করুন ।</a><br />
<div>
২। এই বার .env ফাইলে যে ডাটাবেজের জন্য মাইগ্রাশন আর মডেল তৈরি করতে চান তার নাম , ইউজার নেম এবং পাসওয়ার্ড সেট করুন । </div>
<div>
৩। কি জাদু দেখবেন না ? হ্যা আর দেরি না এখন আমরা জাদু দেখব ।</div>
<div>
৪। আপনার প্রজেক্টে কমান্ড লাইন ওপেন করে নিচের লাইনগুলি একের পর এক রান করুন ।</div>
<blockquote class="tr_bq">
<pre style="background: rgb(255, 255, 255); border-left-color: rgb(45, 45, 50); border-left-width: 2px; border-radius: 0px; border-style: none none none solid; box-sizing: border-box; margin-bottom: 10px; overflow: auto; padding: 9.5px; word-break: break-all; word-wrap: break-word;"><code style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-image-outset: initial; border-image-repeat: initial; border-image-slice: initial; border-image-source: initial; border-image-width: initial; border-radius: 0px; border: none; box-sizing: border-box; font-size: 12px; line-height: 12px; padding: 0px; white-space: pre-wrap;"><span style="color: #2d2d32; font-family: "source code pro" , "menlo" , "consolas" , "courier new" , "courier" , monospace;">composer require --dev --no-update "xethron/migrations-generator:dev-l5"
composer require --dev --no-update "way/generators:dev-feature/laravel-five-stable"
composer require --dev --no-update "user11001/eloquent-model-generator": "~2.0"
composer config repositories.repo-name git "git@github.com:jamisonvalenta/Laravel-4-Generators.git"
composer update</span></code><span style="background-color: transparent;"> </span></pre>
</blockquote>
৫। এই বার কম্পোজার আপডেট করা শেষ হলে আপনি জাদু দেখার জন্য প্রায় তৈরি । আরেকটু কাজ বাকি ।<br />
<br />
৬। আপনার প্রজেক্টের config/app.php ফাইলটি ওপেন করুন আর নিচের লাইনগুলি প্রোভাইডার সেকশনে যোগ করুন । <br />
<blockquote class="tr_bq">
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt;"><pre style="font-family: 'Courier New'; font-size: 9pt;"><span style="font-family: "courier new";"><span style="background-color: #f7faff; font-size: 12px;">Way\Generators\GeneratorsServiceProvider::class,
Xethron\MigrationsGenerator\MigrationsGeneratorServiceProvider::class,
User11001\EloquentModelGenerator\EloquentModelGeneratorProvider::class,</span></span><span style="background-color: white; font-family: "courier new"; font-size: 9pt;">
</span></pre>
<div style="background-color: white; font-family: 'courier new'; font-size: 9pt;">
</div>
</pre>
</blockquote>
<blockquote class="tr_bq">
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt;"></pre>
</blockquote>
৭। এখন কমান্ড লাইনে php artisan migrate:generate কমান্ডটি রান করুন । আপনার database/migrations ফোল্ডারে সবকটি টেবিলের জন্য মাইগ্রেশন দেখতে পাবেন ।<br />
৮। আর php artisan models:generate কমান্ডটি লিখলে app ডিরেক্ট্রিতে সবকটি টেবিলের জন্য মডেল দেখতে পাবেন ।<br />
৯। এই হল লারাভেল আর পিএইচপি কমিউনিটির জাদু । দুই মিনিটে মাইগ্রেশন আর মডেল তৈরি । </div>
Avijit Bhattacharjeehttp://www.blogger.com/profile/08876674990575454487noreply@blogger.com0tag:blogger.com,1999:blog-2663963961574969134.post-113619648246951182016-04-29T17:26:00.000-07:002016-07-25T13:15:22.331-07:00লারাভেল এ হাতে খড়ি <div dir="ltr" style="text-align: left;" trbidi="on">
১। প্রথমে আমরা জাম্প(xampp) অথবা ওয়াম্প(wamp) সফটওয়্যার ইন্সটল করব । দুইটিই ফ্রি এবং গুগলে সার্চ করে পাওয়া যাবে । তবে আমি জাম্প পছন্দ করি ।<br />
<br />
২। এইবার কম্পোজার(composer.com) সাইট থেকে windows এর জন্য নির্ধারিত ভার্সনটি নিরবাচন করি আর ডাউনলোড করি । কম্পোজার ইন্সটল করার সময় php.exe file কে ব্রাউজ করে সিলেক্ট করে দিব । যেটা আমারা C:\xampp\php এই লোকেশনে পাব।<br />
<br />
৩। কম্পোজার ইন্সটল করতে কিছু সময় লাগতে পারে ।<br />
<br />
৪। কম্পোজার ইন্সটল হলে আমরা command line ওপেন করে নিচের কমান্ডটি রান করি ।<br />
composer create<span class="token operator">-</span>project <span class="token operator">--</span>prefer<span class="token operator">-</span>dist laravel<span class="token operator">/</span>laravel laralearn<br />
এইখানে blog হল নতুন প্রজেক্টের নাম । এই কমান্ডটি আমরা command line ওপেন করলে যে ডিরেক্টরি আসে সেইখানে laralearn নামে একটি ফোল্ডার খুলে ।<br />
<br />
৫। এখন cd laralearn কমান্ডটি রান করি । তাহলে আমরা laralearn ডিরেক্ট্রিতে প্রবেশ করব ।<br />
<br />
৬। তারপর php artisan serve কমান্ডটি রান করি । তাহলে Laravel development server started on http://localhost:8000/ এই রকম একটি মেসেজ দিবে ।<br />
<br />
৭। এখন যদি আমরা ব্রাউজারে localhost:8000/ এ যাই তাহলে আমাদের প্রোজেক্টের ওয়েলকাম পেজ দেখতে পাব ।<br />
<br /></div>
Avijit Bhattacharjeehttp://www.blogger.com/profile/08876674990575454487noreply@blogger.com0tag:blogger.com,1999:blog-2663963961574969134.post-34761842326554411552016-04-12T14:38:00.000-07:002016-07-25T13:15:51.252-07:00কিভাবে লারাভেল(laravel) প্রজেক্ট সিপেনেলে(cpanel) লাইভ করবেন ?<div dir="ltr" style="text-align: left;" trbidi="on">
আজকে আমরা লারাভেল প্রজেক্ট কিভাবে সিপেনেলে আপলোড করে লাইভ করা যায় দেখব ।<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<img border="0" height="476" src="https://2.bp.blogspot.com/-ksMhSYnFMvQ/Vw1ZdITZBkI/AAAAAAAAAPM/0Eo0ryVOQGoTEykMviMdvk0NeJ3aj0YvQCLcB/s640/projectStructure.JPG" width="640" /></div>
<div class="separator" style="clear: both; text-align: center;">
১।আমাদের লারাভেল প্রজেক্টের স্ট্রাকচার দেখতে এই রকম হবে । </div>
<div class="separator" style="clear: both; text-align: center;">
২।আমাদেরকে পাবলিক ফোল্ডার বাদে সকল ফোল্ডার ও ফাইল সিলেক্ট করে একটি জিপ ফাইল হিসেবে সংরক্ষণ করতে হবে , যার নাম দিব লারাভেল।</div>
<div class="separator" style="clear: both; text-align: center;">
৩।পাবলিক ফোল্ডারের সকল ফাইল সিলেক্ট করে , জিপ করে পাবলিক নামে সংরক্ষণ করতে হবে। </div>
<div class="separator" style="clear: both; text-align: center;">
৪।এবার আমাদের ডেস্কটপে কাজ শেষ।</div>
<div class="separator" style="clear: both; text-align: center;">
৫।তারপর আমরা সিপেনেলে গিয়ে লগইন করব আর ফাইল মেনেজারের অপশনে ঢুকব। </div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://3.bp.blogspot.com/-mofvjgiR2fM/Vw1fXCXcUaI/AAAAAAAAAPc/eVR3EJfZ7vYFXPhQ9qtDZntaxoIZhE5VACLcB/s1600/fileManagerView.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="416" src="https://3.bp.blogspot.com/-mofvjgiR2fM/Vw1fXCXcUaI/AAAAAAAAAPc/eVR3EJfZ7vYFXPhQ9qtDZntaxoIZhE5VACLcB/s640/fileManagerView.JPG" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
৬। চিত্রে প্রদর্শিত লারাভেল ফোল্ডারটি আমাদের তৈরী করতে হবে। তারপর আপলোড বাটন সিলেক্ট করে লারাভেল নামের জিপ ফোল্ডারটি আপলোড করতে হবে। আর এক্সট্রাক্ট করতে হবে।</div>
<div class="separator" style="clear: both; text-align: center;">
৭। এইবার হোম ডিরেক্টরিতে গিয়ে পাব্লিক_এইচটিএমএল ফোল্ডারে ঢুকি আর পাবলিক নামের জিপ ফোল্ডারটি আপলোড করে এক্সট্রাক্ট করি।</div>
<div class="separator" style="clear: both; text-align: center;">
৮। public_html ফোল্ডারের index.php file এর কন্টেন্টে নিম্নক্তো জায়গায় /laravel জোগ করি। </div>
<blockquote class="tr_bq" style="clear: both; text-align: center;">
<blockquote class="tr_bq" style="clear: both;">
require __DIR__.'/../laravel/bootstrap/autoload.php';</blockquote>
<blockquote class="tr_bq" style="clear: both;">
$app = require_once __DIR__.'/../laravel/bootstrap/app.php';</blockquote>
</blockquote>
<div class="separator" style="clear: both; text-align: center;">
</div>
৯। তারপর হোম ডিরেক্টরির লারাভেল ফোল্ডারে যাই । আর bootstrap folder এ paths.php file যোগ করি যদি না থাকে । <a href="https://github.com/laravel/laravel/blob/834cb7530df5ea28803569fd6bf28c6e759170ef/bootstrap/paths.php">paths.php</a> <br />
১০। paths.php file এ 'public' => __DIR__.'/../public_html', এর মত করে পরিবর্তন করি।<br />
১১। .env file টা নিম্নোক্ত ভাবে পরিবর্তন করি ।<br />
<blockquote class="tr_bq">
<blockquote class="tr_bq">
APP_ENV=local</blockquote>
<blockquote class="tr_bq">
APP_DEBUG=true</blockquote>
<blockquote class="tr_bq">
APP_KEY=OdDLG9QwWa6CIhygQqxkXHmRZTD57yiU</blockquote>
<blockquote class="tr_bq">
APP_URL=www.something.com </blockquote>
<blockquote class="tr_bq">
<br /></blockquote>
<blockquote class="tr_bq">
DB_HOST=127.0.0.1</blockquote>
<blockquote class="tr_bq">
DB_PORT=3306</blockquote>
<blockquote class="tr_bq">
DB_DATABASE=obts</blockquote>
<blockquote class="tr_bq">
DB_USERNAME=obts</blockquote>
<blockquote class="tr_bq">
DB_PASSWORD=something</blockquote>
<blockquote class="tr_bq">
<br /></blockquote>
<blockquote class="tr_bq">
CACHE_DRIVER=file</blockquote>
<blockquote class="tr_bq">
SESSION_DRIVER=file</blockquote>
<blockquote class="tr_bq">
QUEUE_DRIVER=sync</blockquote>
<blockquote class="tr_bq">
<br /></blockquote>
<blockquote class="tr_bq">
REDIS_HOST=127.0.0.1</blockquote>
<blockquote class="tr_bq">
REDIS_PASSWORD=null</blockquote>
<blockquote class="tr_bq">
REDIS_PORT=6379</blockquote>
<blockquote class="tr_bq">
<br /></blockquote>
<blockquote class="tr_bq">
MAIL_DRIVER=smtp</blockquote>
<blockquote class="tr_bq">
MAIL_HOST=mailtrap.io</blockquote>
<blockquote class="tr_bq">
MAIL_PORT=2525</blockquote>
<blockquote class="tr_bq">
MAIL_USERNAME=null</blockquote>
<blockquote class="tr_bq">
MAIL_PASSWORD=null</blockquote>
<blockquote class="tr_bq">
MAIL_ENCRYPTION=null</blockquote>
</blockquote>
১২। আজ আমরা শিখলাম কিভাবে সিপেনেলে(cpanel) লারাভেল(laravel) প্রোজেক্ট লাইভ করতে হয় । এখন আপনি আপনার সাইটে ঢুকলে আপনার প্রজেক্ট দেখতে পাবেন । </div>
Avijit Bhattacharjeehttp://www.blogger.com/profile/08876674990575454487noreply@blogger.com0