Try Tuts+ Premium, Get Cash Back!
Diving into PHP
videos

Diving into PHP

As some of you might know, I’ve been running a weekly video series on the ThemeForest Blog that teaches new developers exactly how to work with PHP. Once or twice a week, I release a new “episode” that builds upon the previous days. To expand our viewership, I’ve decided to release “Day 13″ here. Be sure to subscribe to In the Woods to stay up to date on each new release.

Why do it this way? Because people don’t always have the time to watch sixty minute videos. By posting short ten minute episodes, beginners can easily digest each lesson, rather than become overwhelmed with more information than their minds are able to consume. If you’re new to PHP, and are not familiar with this series, I hope you’ll subscribe and become a new viewer.

Day 13: Uploading Files

Don’t worry; it’s not required that you view the previous days first. Each new episode is a self contained tutorial. However, the concepts build upon what you’ve already learned!

In this lesson, you’ll learn how to upload files, and how to use regular expressions to ensure that inappropriate file types aren’t uploaded to your server.

Previous Screencasts

Diving into PHP
  1. Day 1: Installation
  2. Day 2: Variables
  3. Day 3: Passing Values From Page to Page
  4. Day 4: Multiple Variables and the “foreach” Statement
  5. Day 5: Refactoring, Arrays, and Functions – Oh My!
  6. Day 6: Including Files
  7. Day 7: Regular Expressions
  8. Day 8: Strings
  9. Day 9: First-Time Visitors
  10. Day 10: Getting Started With MySql
  11. Day 11: SQL Insert Statements
  12. Day 12: The File System
  • Subscribe to the NETTUTS RSS Feed for more daily web development tuts and articles.


Tags: Videos
Note: Want to add some source code? Type <pre><code> before it and </code></pre> after it. Find out more
  • http://ScottTolinski.com Scott Tolinski

    /**
    if(isset($status)) {
    $path = $target . $file_name;
    echo “Congratulations. Hear your file.“;

    echo ”

    “;

    }
    ?>
    **/

  • http://www.homemarket.ro Ciprian

    Where is day 14 STEVE :P ?

  • http://twitter.com/BillyShibley Shibs

    I think the idea of an intermediate series is great. I’m really anxious for more of these.

  • Bastiaan

    Hey Jeff,

    Thanks for the lessons! I learn it way better this way, then from a book. It’s easier to understand this way, and if you understand this way, it’s a lot easier to read a book of you already know a couple of things.

    I was just wondering if you could do a lesson about mail()(or PHPMailer) and/or more mySQL. Especially login. INSERT and SELECT helped me a lot and i have much fun with it, but how can i fix a login page? I really hope you have the time and money to do a lot more episodes, it helps me(and not only me) very very much to understand PHP.

    Thank you very much!!

    Bastiaan(Holland)

  • http://www.seanhood.co.uk Sean Hood

    Hi Jeff,

    I’m really liking your screen casts in php, I’ve learnt loads so far and hope to learn a lot more, also i really like your jQuery screen casts too.

    Keep it up.

  • Andrew Miesner

    Jeff!

    When will we see Day 14? I hope you haven’t died from exhaustion yet :P

    • http://xpressabhi.com abhishek

      @Andrew
      I even can’t see Day 13 and you are asking for Day 14. OR you left Day 13 considering as an unlucky number.

      • http://xpressabhi.com abhishek

        Sorry..

        Page was not loaded properly, so I couldn’t see Day 13.
        Its there…

        Sorry again for complaining..

  • http://www.mindred.co.uk Steve

    Hi Jeff, yes i’m also hoping you do a day 14! This is great stuff.

  • Bogdan

    I’m Working on a website with gallery for a friend and i didn’t know how to do the upload part.. this tutorial is very great i’ve read about ten twenty tutorials about file upload but no other tutorial was explained part by part like this one know i know what i have to do.. maybe in the next tutorial or i dunno do onther tutorial for multiple file upload and inserting the data into mysql for pictures.. or other stuff.. would be very nice and a great help for lot’s of ppl.

  • http://rickbrossgraphics.co.nr Rick Bross

    I wanna see a Intermediate Series named, “A Firm Grip on PHP”.

  • http://www.logicdesign.co.uk Keith

    Nice! always good to go over php

  • Pingback: links for 2009-04-03 « sySolution

  • http://www.digitalvaldosta.com Josh

    When will the series continue? or will it?
    I enjoyed this.
    Maybe branch to another level.

  • Pingback: PHP Linkliste « H79.de

  • http://www.bennykristensen.com Benny

    This is so great. Thank you very much! And please, make this a 300 days Diving into PHP marathon!

  • Pingback: Common Craft » PHP for the laid off guy

  • Kenny

    Is there a day 14? Or does this series continue on under a different name?

    I love your tutorials, and I’ve tried to learn PHP before, and have never understood it, but these tutorials really help me to understand the language better.

    I appreciate all the effort you put into these Jeff, and hope you continue to do them.

  • http://www.samiuljahan.worpdress.com samiul

    great man! keep it up

  • Pingback: Diving into PHP - Nettuts+

  • JR

    Dude, I’d pay for these. Don’t stop.

  • Pingback: HaXXed Blog » A Roundup of What I’ve Learned This Past Year, and Where

  • Joshua

    Sob sob sob… is day 13 the end? :( I want to learn more :(

  • beneblack

    First of all: I love these tutorials. I’m watching them all, as I watched the awsome serie jquery for beginners.

    There is a little mistake in line 12 of the index.php

    $_FILES['file']['size'] > 300000) does not work. You see it in the tutorial on minute 17, where the file is not uploaded and the message “congrats…” ist thrown out.

    If the file is larger than the size defined in line 42 :
    input type=”hidden” name=”MAX_FILE_SIZE” value=”300000″
    the $_FILES-array-values of ‘error’ and ‘size’ are changing. ‘error’ becomes ’2′ and (that is the key:) ‘size’ bekomes ’0′.

    Something like $_FILES['file']['size'] == ’0′ && $_FILES['file']['error'] ==’2′ should work.

    @jeff Please go on making these tutorials. I love them all. Didn’t find anything helpful like this in german.

    beneblack

  • Saad

    more php tutorials like this please.

  • nilaf

    best video tutorial for a beginner like me.Thanks Jeffrey Way.i want to know how to create a user image crop application after upload.waiting for that

  • http://openskymedia.com Jason

    Are there not going to be any more of these?

  • jbcarey

    Can’t keep asking it…. please keep this going, either here or “there”

  • Alex

    Dont stop! keep going all the way to 100 videos. there is so much more to learn with MySQL etc…

    We love it, keep it coming!

  • JimT

    Jeff-

    FYI
    http://blog.themeforest.net/screencasts/diving-into-php-video-series/
    Doesn’t contain links to the last few days of the series, but I did find them here after some googleing:
    http://net.tutsplus.com/videos/screencasts/diving-into-php/

  • Pingback: bulldoggie studio » 120 Tips, Tricks, and Tuts from 2009 Worth your Time

  • Pingback: En alldeles utmärkt php-tutorial | Hogeran

  • Pingback: dESiGNERz BLOG » 120 Tips, Tricks, and Tuts from 2009 Worth your Time

  • danielo

    Hi Everyone, I just discovered this amazing tutorials and I’m downloading them from iTunes. I just downloaded the chapter 2 and it looks funny, I downloaded it twice and stills looking backwards or something, here’s a picture of the image I hope this can be fixed or please if you tell me where can find the original video to download I will be appreciated guys!

    the image: http://screencast.com/t/NzhlMmE2

  • Charles

    OK, these are great, thanks Jeff, and my dyslexic learning curve thanks you too. LOL.

    OK, watching day 3 on global variables and I get an error message:

    Notice: Undefined variable: _post in C:\wamp\www\Day3\page2.php on line 11

    in my WAMP, php is not recognizing the super globals. I have checked php.ini and settings are…

    variables_order = “GPCS”
    request_order = “GP”
    register_globals = On

  • Charles

    Silly me, I didn’t put the super globals in all caps. :P Don’t mind me, it was late. LOL

  • Pingback: Praj's Blog » Web Development Screencasts

  • Pingback: Diving into PHP | Nettuts+ | Yoobz

  • http://www.steelsculpt.com Toin Adams

    Thank you for these great tutorials. You’re the first person I’ve come across who speaks logically and clearly for newbies and best of all without using unnecessary jargon which generally makes a mystery of all this programming stuff! Really useful t

  • http://nicolasfranz.com Nicolas

    Jeff! This is an amazing tutorial. But let me ask you something, in the Day 16 video, you said that it would be a Day 17.. but I think the 16 was the last screencast. It would be great to continue with this project, don’t you think? ;)

    Thanks again.

  • Pingback: TG Developer » Who Needs University? The Best Nettuts+ Screencast Training Courses

  • http://www.horizonwebdesign.net/ pi

    This is the second time I try to get started with php. Last time I wasted two days trying to configure Apache and php on my computer and eventually got so frustrated I gave up. This time of course I have a problem with Wamp, it won’t work for me after uninstalling, deleting, restarting etc. no matter what I do, so I decided to just test my files on the outside server.
    Anyway, I want to thank you for your great tutorials, keep up the good work!

    Cheers
    Eva

  • Pingback: Who Needs University? The Best Nettuts+ Screencast Training Courses

  • Pingback: Who Needs University? The Best Nettuts+ Screencast Training Courses | Blue Tuts

  • http://www.dotpeak.com Spyros

    Thank you for this tutorial. I’ve been following this series since the start and it’s really helpful since I’ve just started teaching myself PHP.

  • Pingback: Updated: Who Needs University? The Best Nettuts+ Screencast Training Courses | Neil Kearney Design

  • Pingback: Who Needs University? The Best Nettuts+ Screencast Training Courses | LionWebMedia.com

  • Rafael

    I love these tutorials. keep them coming.

  • Rich

    Thanks for the help with this! You explain things very clearly.

  • Pingback: 30+ PHP Tutorials For Beginners | Technical

  • Pingback: PHP শেখার সহজ উপায়গুলো জেনে নিন « monir_cse_duet_09

  • nina

    Thank you, Jeff ..
    It helps me so much :)