Your SlideShare is downloading. ×
0
Sorabh Jain
saurabhj@yahoo-inc.com
IIT-Delhi 9-Aug-2013
Hacks With PHP,
MySQL & JS
Why PHP ?
It is a server side scripting language which allows you
to :-
• Dynamically edit, change or add any content to a...
Why JavaScript ?
• Client side scripting language which makes your
browser more interactive.
• No need to go back to serve...
Why MySQL ?
• Open source data storage RDBMS which is easy
to install and use with any operating system.
• Lot of support ...
What we need to learn?
• Enough PHP to handle simple request
• How to talk to mysql data store using PHP
• How to parse/ge...
How it works?
Getting Started
• You need a local server with PHP enabled.
• XAMPP for windows
• MAMP for Mac OSx
• Linux has it by defau...
<?php
$school=”IIT-Delhi";
echo "Hello, $school hackers";
?>
Create a file hello.php into webserver directory and call it ...
Basic Syntax
• PHP blocks start with <?php and end with ?> -
• Every line of PHP has to end with a semicolon
";”
• Variabl...
<?php
$origin = 'Outer Space';
$planet = 'Earth';
$plan = 9;
$sceneryType = "awful";
?>
<h1>Synopsis</h1><p>It was a peace...
Displaying more complex data
• You can define arrays in PHP using the array()
method
$lampstack = array('Linux','Apache','...
Arrays
• Accessing arrays using index
<ul>
<?php
$lampstack = array('Linux','Apache','MySQL','PHP');
echo '<li>Operating S...
Arrays
• Iterating through arrays
<ul>
<?php
$lampstack = array(’MacOs','Apache','MySQL','PHP');
$labels = array('Operatin...
Associative Arrays
• PHP has associative arrays with string keys
<ul>
<?php
$lampstack = array(
'Operating System' => 'Lin...
Functions
<?php
function renderList($array){
if( sizeof($array) > 0 ){
echo '<ul>';
foreach( $array as $key => $item ){
ec...
Interacting with the web - URL
parameters
<?php
$name = 'Tom';
// if there is no language defined, switch to English
if( !...
Loading content from the web
<?php
// define the URL to load
$url = 'http://cricket.yahoo.com/player-profile/Sachin-
Tendu...
Connecting to MySQL
• Simple example to fetch data from DB
Twitter Api Demo
• Creating a sample app on twitter developer
network
• Giving proper permissions to app and
specifying wh...
Sample Codes
PHP sample code:-
https://github.com/sorabhjain/phpsamplecode
Twitter Api demo code:-
https://github.com/sora...
Further Reference
http://www.php.net/
http://developer.yahoo.com
http://isithackday.com/hackday-toolbox/
http://phpforhack...
Upcoming SlideShare
Loading in...5
×

Phphacku iitd

1,712

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,712
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Phphacku iitd"

  1. 1. Sorabh Jain saurabhj@yahoo-inc.com IIT-Delhi 9-Aug-2013 Hacks With PHP, MySQL & JS
  2. 2. Why PHP ? It is a server side scripting language which allows you to :- • Dynamically edit, change or add any content to a Web page • Respond to user queries or data submitted from HTML forms • Access any data or databases and return the result to a browser • Customize a Web page to make it more useful for individual users • Provide security since your server code cannot be viewed from a browser • Does not require any special tools. Create a file with .php extension and your done.
  3. 3. Why JavaScript ? • Client side scripting language which makes your browser more interactive. • No need to go back to server for form validation • JavaScript inserted into HTML pages, can be executed by all modern web browsers. • It makes you static HTML page dynamic which was not easy with CSS.
  4. 4. Why MySQL ? • Open source data storage RDBMS which is easy to install and use with any operating system. • Lot of support and libraries available in scripting languages like php.
  5. 5. What we need to learn? • Enough PHP to handle simple request • How to talk to mysql data store using PHP • How to parse/generate XML/JSON in PHP • Enough JavaScript to make browser interactive
  6. 6. How it works?
  7. 7. Getting Started • You need a local server with PHP enabled. • XAMPP for windows • MAMP for Mac OSx • Linux has it by default
  8. 8. <?php $school=”IIT-Delhi"; echo "Hello, $school hackers"; ?> Create a file hello.php into webserver directory and call it like this http://localhost:80/hello.php Getting Started
  9. 9. Basic Syntax • PHP blocks start with <?php and end with ?> - • Every line of PHP has to end with a semicolon ";” • Variables in PHP start with a $ • You print out content to the document in PHP with the echo command. • $school is variable and it can be printed out • You can jump in and out of PHP anywhere in the document. So if you intersperse PHP with HTML blocks, that is totally fine. For example:
  10. 10. <?php $origin = 'Outer Space'; $planet = 'Earth'; $plan = 9; $sceneryType = "awful"; ?> <h1>Synopsis</h1><p>It was a peaceful time on planet <?php echo $planet;?> and people in the <?php echo $sceneryType;?> scenery were unaware of the diabolic plan <?php echo $plan;?> from <?php echo $origin;?> that will take their senses to the edge of what can be endured.</p> Mix Match • You can mix and match HTML and PHP demo1.php
  11. 11. Displaying more complex data • You can define arrays in PHP using the array() method $lampstack = array('Linux','Apache','MySQL','PHP'); • If you simply want to display a complex datatype like this in PHP for debugging you can use the print_r() command $lampstack = array('Linux','Apache','MySQL','PHP'); print_r($lampstack); demo2.php
  12. 12. Arrays • Accessing arrays using index <ul> <?php $lampstack = array('Linux','Apache','MySQL','PHP'); echo '<li>Operating System:'.$lampstack[0] . '</li>'; echo '<li>Server:' . $lampstack[1] . '</li>'; echo '<li>Database:' . $lampstack[2] . '</li>'; echo '<li>Language:' . $lampstack[3] . '</li>'; ?> </ul> demo3.php
  13. 13. Arrays • Iterating through arrays <ul> <?php $lampstack = array(’MacOs','Apache','MySQL','PHP'); $labels = array('Operating System','Server','Database','Language'); $length = sizeof($lampstack); for( $i = 0;$i < $length;$i++ ){ echo '<li>' . $labels[$i] . ':' . $lampstack[$i] . '</li>'; } ?> </ul> sizeof($array) - this will return the size of the array demo4.php
  14. 14. Associative Arrays • PHP has associative arrays with string keys <ul> <?php $lampstack = array( 'Operating System' => 'Linux', 'Server' => 'Apache', 'Database' => 'MySQL', 'Language' => 'PHP' ); $length = sizeof($lampstack); $keys = array_keys($lampstack); for( $i = 0;$i < $length;$i++ ){ echo '<li>' . $keys[$i] . ':' . $lampstack[$keys[$i]] . '</li>'; } ?> </ul> demo5.php
  15. 15. Functions <?php function renderList($array){ if( sizeof($array) > 0 ){ echo '<ul>'; foreach( $array as $key => $item ){ echo '<li>' . $key . ':' . $item . '</li>'; } echo '</ul>'; } } $lampstack = array( 'Operating System' => ’Windows', 'Server' => 'Apache', 'Database' => 'MySQL', 'Language' => 'PHP' ); renderList($lampstack); ?> demo6.php
  16. 16. Interacting with the web - URL parameters <?php $name = 'Tom'; // if there is no language defined, switch to English if( !isset($_GET['language']) ){ $welcome = 'Oh, hello there, '; } if( $_GET['language'] == 'hindi' ){ $welcome = 'Namastae, '; } switch($_GET['font']){ case 'small': $size = 80; break; case 'medium': $size = 100; break; case 'large': $size = 120; break; default: $size = 100; break; } echo '<style>body{font-size:' . $size . '%;}</style>'; echo '<h1>'.$welcome.$name.'</h1>'; ?> demo7.php
  17. 17. Loading content from the web <?php // define the URL to load $url = 'http://cricket.yahoo.com/player-profile/Sachin- Tendulkar_2962'; // start cURL $ch = curl_init(); // tell cURL what the URL is curl_setopt($ch, CURLOPT_URL, $url); // tell cURL that you want the data back from that URL curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // run cURL $output = curl_exec($ch); // end the cURL call (this also cleans up memory so it is // important) curl_close($ch); // display the output echo $output; ?> demo8.php
  18. 18. Connecting to MySQL • Simple example to fetch data from DB
  19. 19. Twitter Api Demo • Creating a sample app on twitter developer network • Giving proper permissions to app and specifying which url we want to hit from twitter app. • Writing code to make o-auth call to twitter • Making twitter api calls after successful o-auth validation.
  20. 20. Sample Codes PHP sample code:- https://github.com/sorabhjain/phpsamplecode Twitter Api demo code:- https://github.com/sorabhjain/twitterapi Twitter api docs:- https://dev.twitter.com/docs/api/1.1
  21. 21. Further Reference http://www.php.net/ http://developer.yahoo.com http://isithackday.com/hackday-toolbox/ http://phpforhacks/index.html http://hackyourworld.org/
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×