Hello and welcome to our community! Is this your first visit?
Register
Enjoy an ad free experience by logging in. Not a member yet? Register.
Results 1 to 7 of 7
  1. #1
    Regular Coder
    Join Date
    Jan 2008
    Posts
    216
    Thanks
    10
    Thanked 1 Time in 1 Post

    PHP file upload help

    I am trying to add a file upload option to a form, i have the upload code working on another form, but i cant same to get it to work with the form im working on atm, i need to add the upload script in to the form, the rest of the form works fine. Can anyone help please help?

    My code for the upload file that i need to add to the form is:

    PHP Code:
    $uploadDir 'upload/'

    if (isset(
    $_POST['submit']) && $error_stat == 0) {


        
    $fileName $_FILES['userfile']['name'];
        
    $tmpName  $_FILES['userfile']['tmp_name'];
        
    $fileSize $_FILES['userfile']['size'];
        
    $fileType $_FILES['userfile']['type'];

        
    // the files will be saved in filePath 
        
    $filePath $uploadDir $fileName;

        
    // move the files to the specified directory
        // if the upload directory is not writable or
        // something else went wrong $result will be false
        
    $result    move_uploaded_file($tmpName$filePath);
        
        
        include(
    "database.php");

        if(!
    get_magic_quotes_gpc())
        {
            
    $fileName  addslashes($fileName);
            
    $filePath  addslashes($filePath);
        } 


    My code for the form is:

    PHP Code:
    <?php 

    if (isset($_POST['submit'])) { 

    $error_stat 0
    $jobtitle_message '';
    $jobcatergory_message '';
    $joblocation_message '';
    $employmenttype_message '';
    $salary_message '';
    $date_message '';
    $educationallevel_message '';
    $description_message '';




    $jobtitle $_POST['jobtitle']; 
    $jobcatergory $_POST['jobcatergory']; 
    $joblocation $_POST['joblocation']; 
    $employmenttype= ($_POST['employmenttype']); 
    $salary $_POST['salary']; 
    $date $_POST['date']; 
    $educationallevel $_POST['educationallevel']; 
    $description $_POST['description']; 



    //Error checking 



    // Job Title check) 
    if (!$jobtitle) {
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;

    //Set the message to tell the user to enter a username
        
    $jobtitle_message '*Please enter a job title*';
    }

    else if (
    ctype_digit($jobtitle)) { 
       
    $error_stat 1
       
    $jobtitle_message .= '*Invalid Job Title*'


    else if ( 
    preg_match'/\W/'$jobtitle)){
         
    $error_stat 1
        
    $jobtitle_message '*Invalid jobtitle, letters only, no spaces*'



    $jobtitle $_POST['jobtitle']; 
    $jobtitle trim($jobtitle); 

       if (
    strlen($jobtitle) > 30){ 
       
    $error_stat 1
       
    $jobtitle_message '*Job Title must be 20 characters or less*'







    //    Job Catergory Check)  
    if ($jobcatergory == 'Please Select'){
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;
        
    $jobcatergory_message '*Please select a Job Catergory*';
    }





    //    Job Location Check)  
    if ($joblocation == 'Please Select'){
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;
        
    $joblocation_message '*Please select a Job location*';
    }


    //    Employment Type Check)  
    if ($employmenttype == 'Please Select'){
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;
        
    $employmenttype_message '*Please select Employment type*';
    }





    // Salary check) 
    if (!$salary) {
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;

    //Set the message to tell the user to enter a username
    $salary_message '*Please enter job salary*';
    }

    else if (!
    ctype_digit($salary)) { 
       
    $error_stat 1
       
    $salary_message .= '*Invalid salary*'
    }




    //Date check) 
    if (empty($date)) {
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;

    //Set the message to tell the user to enter a dob
    $date_message '*Please enter job closing date*';
    }

    //Check the format and explode into $parts
      
    elseif (!ereg("^([0-9]{2})/([0-9]{2})/([0-9]{4})$"
              
    $date$parts)){
         
    $error_stat 1;     

    //Set the message to tell the user the date is invalid
    $date_message '*Invalid date, must be DD/MM/YYYY format*';
    }
        
      elseif (!
    checkdate($parts[2],$parts[1],$parts[3]))
      {
      
    $error_stat 1
      
      
    //Set the message to tell the date is invalid for the month entered
        
    $date_message '*Invalid date, month must be between 1-12*';
    }
      

    // Job Title check) 
    if (!$description) {
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;

    //Set the message to tell the user to enter a username
        
    $description_message '*Please enter a job description*';
    }

    $description $_POST['description']; 
    $description trim($description); 

       if (
    strlen($description) > 150){ 
       
    $error_stat 1
       
    $description_message '*Job Title must be 150 characters or less*'


      
      
      
    //    Educational Level Check)  
    if ($educationallevel == 'Please Select'){
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;
        
    $educationallevel_message '*Please select Educational level required*';
    }
        
    $account mysql_fetch_array(mysql_query("SELECT * FROM employers WHERE username='" $_SESSION["username"] . "'")); 

    $username $account["username"];

    $uploadDir 'upload/'


    //Then, only run the query if there were no errors (if $error_stat still equals 0) 
    if ($error_stat == 0) { 
       
    mysql_query("INSERT INTO job (username, jobtitle, jobcatergory, joblocation, employmenttype, salary, date, educationallevel, description, name, type, size, path) VALUES ('$username', '$jobtitle', '$jobcatergory', '$joblocation', '$employmenttype', '$salary', '$date', '$educationallevel', '$description', '$name', '$type', '$size', '$path')"); 

     echo 
    "<h3>Registration Successful!</h3>"
       echo 
    "<p>Thankyou, <b>$username</b>,registration was successful</p>"
       echo 
    "<p>login.</p>";
          echo 
    "<a href=\"index2.php\">Login</a>";
          
    }
    }



    //Then, for the form, only show it if 1) the form hasn't been submitted yet OR 2) there is an error 
    if (!isset($_POST['submit']) || $error_stat == 1) { 



    ?>

  • #2
    Senior Coder angst's Avatar
    Join Date
    Apr 2004
    Location
    Toronto, Ontario
    Posts
    2,114
    Thanks
    15
    Thanked 122 Times in 122 Posts
    your code looks fine.
    could you also post your form?

  • #3
    Regular Coder
    Join Date
    Jan 2008
    Posts
    216
    Thanks
    10
    Thanked 1 Time in 1 Post
    Quote Originally Posted by angst View Post
    your code looks fine.
    could you also post your form?

    Thanks for the reply angst, im having trouble putting the code together that includes the upload script. I cant same to get the upload script working with the rest of the code.

    My full code without the upload script, i dont know how to add the upload script into the code below:

    PHP Code:
    <?php
    session_start
    (); 
    if(!isset(
    $_SESSION['username'])){ 
    header("Location: index2.php"); 
    }  
    include(
    "database.php");
    include(
    "loginemployer.php");
    ?>


    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Jobs4U</title>


    <!--CSS Stylesheet  -->
        <link rel="stylesheet" type="text/css" href="./css/main.css" />
        <link rel="stylesheet" type="text/css" href="./css/registerform.css" />
        </head>

        <body style="margin-left:1px;margin-right:1px;margin-bottom:0px;margin-top:0px;">
        
    <!--Main Container  -->    
        <div id="container">

    <!--Main Header  -->
        <div id="header" style="width: 988px; height: 154px">
            &nbsp;
        </div>


    <!-- Navigation Menu -->
        <div id="nav_menu">
            <div class="link_container" style="width: 852px; height: 32px">
                <a href="Index.php" class="main_nav">home</a><span class="link_separator">::</span>
                <a href="page.htm" class="main_nav">products</a><span class="link_separator">::</span>
                <a href="page.htm" class="main_nav">services</a><span class="link_separator">::</span>
                <a href="page.htm" class="main_nav">about us</a><span class="link_separator">::</span>
                <a href="page.htm" class="main_nav">contact</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                <input type="text" name="search0" maxlength="30" size="30" >&nbsp;&nbsp;
                <a href="page.htm" class="main_nav">Quick Search&gt;&gt;&gt;</a></div>
        </div>

    <!-- Container (left) -->    
        <div id="body">
            <div id="body-left-panel" style="width: 654px; height: 981px">
                <div style="padding:10px;">
                    
    <!-- Left container 1(Top) -->
                    <div class="box_upper_partviewdetails">
                        <img src="img/box_up-left_edge.png" alt="" class="align-left"/>
                        <img src="img/box_up-right_edge.png" alt="" class="align-right"/>
                        <span class="box_header">:: Add a Job</span></div>
                        
    <!--(Middle)  -->
                    <div class="box_middle_partaddjob">
                    <div class="pad_15tah">
                    
    <!--Register Form  --> 


    <?php 

    if (isset($_POST['submit'])) { 

    $error_stat 0
    $jobtitle_message '';
    $jobcatergory_message '';
    $joblocation_message '';
    $employmenttype_message '';
    $salary_message '';
    $date_message '';
    $educationallevel_message '';
    $description_message '';




    $jobtitle $_POST['jobtitle']; 
    $jobcatergory $_POST['jobcatergory']; 
    $joblocation $_POST['joblocation']; 
    $employmenttype= ($_POST['employmenttype']); 
    $salary $_POST['salary']; 
    $date $_POST['date']; 
    $educationallevel $_POST['educationallevel']; 
    $description $_POST['description']; 
    $name $_POST['name'];
    $type $_POST['type'];
    $size $_POST['size'];
    $path $_POST['path'];


    //Error checking 



    // Job Title check) 
    if (!$jobtitle) {
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;

    //Set the message to tell the user to enter a username
        
    $jobtitle_message '*Please enter a job title*';
    }

    else if (
    ctype_digit($jobtitle)) { 
       
    $error_stat 1
       
    $jobtitle_message .= '*Invalid Job Title*'


    else if ( 
    preg_match'/\W/'$jobtitle)){
         
    $error_stat 1
        
    $jobtitle_message '*Invalid jobtitle, letters only, no spaces*'



    $jobtitle $_POST['jobtitle']; 
    $jobtitle trim($jobtitle); 

       if (
    strlen($jobtitle) > 30){ 
       
    $error_stat 1
       
    $jobtitle_message '*Job Title must be 20 characters or less*'







    //    Job Catergory Check)  
    if ($jobcatergory == 'Please Select'){
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;
        
    $jobcatergory_message '*Please select a Job Catergory*';
    }





    //    Job Location Check)  
    if ($joblocation == 'Please Select'){
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;
        
    $joblocation_message '*Please select a Job location*';
    }


    //    Employment Type Check)  
    if ($employmenttype == 'Please Select'){
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;
        
    $employmenttype_message '*Please select Employment type*';
    }





    // Salary check) 
    if (!$salary) {
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;

    //Set the message to tell the user to enter a username
    $salary_message '*Please enter job salary*';
    }

    else if (!
    ctype_digit($salary)) { 
       
    $error_stat 1
       
    $salary_message .= '*Invalid salary*'
    }




    //Date check) 
    if (empty($date)) {
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;

    //Set the message to tell the user to enter a dob
    $date_message '*Please enter job closing date*';
    }

    //Check the format and explode into $parts
      
    elseif (!ereg("^([0-9]{2})/([0-9]{2})/([0-9]{4})$"
              
    $date$parts)){
         
    $error_stat 1;     

    //Set the message to tell the user the date is invalid
    $date_message '*Invalid date, must be DD/MM/YYYY format*';
    }
        
      elseif (!
    checkdate($parts[2],$parts[1],$parts[3]))
      {
      
    $error_stat 1
      
      
    //Set the message to tell the date is invalid for the month entered
        
    $date_message '*Invalid date, month must be between 1-12*';
    }
      

    // Job Title check) 
    if (!$description) {
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;

    //Set the message to tell the user to enter a username
        
    $description_message '*Please enter a job description*';
    }

    $description $_POST['description']; 
    $description trim($description); 

       if (
    strlen($description) > 150){ 
       
    $error_stat 1
       
    $description_message '*Job Title must be 150 characters or less*'


      
      
      
    //    Educational Level Check)  
    if ($educationallevel == 'Please Select'){
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;
        
    $educationallevel_message '*Please select Educational level required*';
    }

    $uploadDir 'upload/'

    if (isset(
    $_POST['submit']) && $error_stat == 0) {


        
    $fileName $_FILES['userfile']['name'];
        
    $tmpName  $_FILES['userfile']['tmp_name'];
        
    $fileSize $_FILES['userfile']['size'];
        
    $fileType $_FILES['userfile']['type'];

        
    // the files will be saved in filePath 
        
    $filePath $uploadDir $fileName;

        
    // move the files to the specified directory
        // if the upload directory is not writable or
        // something else went wrong $result will be false
        
    $result    move_uploaded_file($tmpName$filePath);
        
        
        include(
    "database.php");

        if(!
    get_magic_quotes_gpc())
        {
            
    $fileName  addslashes($fileName);
            
    $filePath  addslashes($filePath);
        }  
        
    }
        
    $account mysql_fetch_array(mysql_query("SELECT * FROM employers WHERE username='" $_SESSION["username"] . "'")); 

    $username $account["username"];

    $uploadDir 'upload/'


    //Then, only run the query if there were no errors (if $error_stat still equals 0) 
    if ($error_stat == 0) { 
       
    mysql_query("INSERT INTO job (username, jobtitle, jobcatergory, joblocation, employmenttype, salary, date, educationallevel, description, name, type, size, path) VALUES ('$username', '$jobtitle', '$jobcatergory', '$joblocation', '$employmenttype', '$salary', '$date', '$educationallevel', '$description', '$name', '$type', '$size', '$path')"); 
        
     echo 
    "<h3>Registration Successful!</h3>"
       echo 
    "<p>Thankyou, <b>$username</b>,registration was successful</p>"
       echo 
    "<p>login.</p>";
          echo 
    "<a href=\"index2.php\">Login</a>";
          
    }
    }



    //Then, for the form, only show it if 1) the form hasn't been submitted yet OR 2) there is an error 
    if (!isset($_POST['submit']) || $error_stat == 1) { 



    ?> 

    <form method="post" class="addform" action="">  
    <fieldset>  
    <label for="cvtitle">Add a Job</label><fieldset> 
    <p align="right">&nbsp;</p>
    </fieldset> 
    <label for="username">Username:</label>  
    <input readonly name="username" type="text" id="username" value="<?php echo $_SESSION["username"]; ?>" /><br />  
    </fieldset>  

    <hr class="hr_blue"/>

    <fieldset> 
    <label for="jobtitle">Job Title:</label> 
    <input name="jobtitle" type="text" id="jobtitle" value="<?php echo $_POST['jobtitle']; ?>"/> 
    <span class="redboldtxt"><?php echo "$jobtitle_message";?></fieldset></span>


    <fieldset>    
    <label for="jobcatergory">Job Catergory:</label><p></p>   
    <select name="jobcatergory"> 
    <option value="Please Select">Please Select</option> 
    <?php 
      $jobcatergory_opts 
    = array( 
        
    "Accountancy and Finance"
        
    "Banking and Insurance"
        
    "Construction"
        
    "Customer Service"
        
    "Engineering"
        
    "Management",
        
    "Hotel and Catering"
        
    "Information Technology",
        
    "Legal",
        
    "Marketing"
        
    "Medical",
        
    "Retail",
        
    "Sales",
        
    "Secretarial",
        
    "Transport and Distribution",
        
    "Working from home",        
      ); 
      foreach(
    $jobcatergory_opts as $opt){
        
    $selected $_POST['jobcatergory'] == $opt " selected=true":"";
        print 
    "<option value=\"{$opt}\"{$selected}>{$opt}</option>";
      }
    ?>
    </select>
    <span class="redboldtxt"><?php echo "$jobcatergory_message";?><?php echo $error['jobcatergory']; ?></span></fieldset> 

    <fieldset> 
    <label for="joblocation">Location:</label> 
    <p></p>
    <select name="joblocation">
    <option value="Please Select">Please Select</option>
    <?php
      $joblocation_opts 
    = array(
        
    "Co.Antrim",
        
    "Co.Armagh",
        
    "Co.Down",
        
    "Co.Fermanagh",
        
    "Co.Londonderry",
        
    "Co.Tyrone",
      );
      foreach(
    $joblocation_opts as $opt){
        
    $selected $_POST['joblocation'] == $opt " selected=true":"";
        print 
    "<option value=\"{$opt}\"{$selected}>{$opt}</option>";
      }
    ?>
    </select>
    <span class="redboldtxt"><?php echo "$joblocation_message";?><?php echo $error['joblocation']; ?></span></fieldset>  


    <fieldset>  
    <label for="employmenttype">Job Type:</label><p></p>  
    <select name="employmenttype"> 
    <option value="Please Select">Please Select</option> 
    <?php 
      $employmenttype_opts 
    = array( 
        
    "permanent fulltime"
        
    "permanent parttime"
        
    "temporary fulltime"
        
    "temporary parttime"
      ); 
      foreach(
    $employmenttype_opts as $opt){
        
    $selected $_POST['employmenttype'] == $opt " selected=true":"";
        print 
    "<option value=\"{$opt}\"{$selected}>{$opt}</option>";
      }
    ?>
    </select>
    <span class="redboldtxt"><?php echo "$employmenttype_message";?><?php echo $error['employmenttype']; ?></span></fieldset> 


    <fieldset> 
    <label for="salary">Salary:</label> 
    <input name="salary" type="text" id="salary" value="<?php echo $_POST['salary']; ?>"/> 
    <span class="redboldtxt"><?php echo "$salary_message";?></span></fieldset>

    <fieldset> 
    <label for="date">Closing Date:</label> 
    <input name="date" type="text" id="date" value="<?php echo $_POST['date']; ?>"/> 
    <span class="redboldtxt"><?php echo "$date_message";?></span></fieldset> 
     

    <fieldset>  
    <label for="educationallevel">Qualification Level Required:</label><p></p>   
    <select name="educationallevel"> 
    <option value="Please Select">Please Select</option> 
    <?php 
      $educationallevel_opts 
    = array( 
        
    "GCSE"
        
    "A-Level"
        
    "Third Level Certification"
        
    "Third Level Diploma"
        
    "Third Level Degree"
        
    "Post Graduate Qualification",
        
    "Masters",
        
    "PHD",
        
    "Professional Qualification",
        
    "Part Professional Qualification",
        
    "Trade Qualification"
      ); 
      foreach(
    $educationallevel_opts as $opt){
        
    $selected $_POST['educationallevel'] == $opt " selected=true":"";
        print 
    "<option value=\"{$opt}\"{$selected}>{$opt}</option>";
      }
    ?>
    </select>
    <span class="redboldtxt"><?php echo "$educationallevel_message";?><?php echo $error['educationallevel']; ?></span></fieldset> 

    <hr class="hr_blue"/>

    <fieldset> 
    Job Description -<br /> 
    </fieldset> 

    <fieldset> 
    <textarea rows="2" name="description" cols="20"><?php echo $account["description"]; ?></textarea><p></p> 
    <span class="redboldtxt"><?php echo "$description_message";?></span></fieldset> 

    Upload Application Form</label> 
    <input type="hidden" name="MAX_FILE_SIZE" value="2000000"><input name="userfile" type="file" class="box" id="userfile">
    <span class="redboldtxt"><?php echo "$filesize_message";?></span>
    <span class="redboldtxt"><?php echo "$filetype_message";?></span>
    </fieldset>

    <p></p>
    <fieldset> 
    <p class="submit"><input type="submit" name="submit" value="Add Job" />

    </fieldset>
    </form> 
    <?php 

    ?>

  • #4
    Senior Coder angst's Avatar
    Join Date
    Apr 2004
    Location
    Toronto, Ontario
    Posts
    2,114
    Thanks
    15
    Thanked 122 Times in 122 Posts
    ah, here's the problem:

    <form method="post" class="addform" action="">

    should include enctype. like:

    <form method="post" class="addform" action="" enctype="multipart/form-data">

  • #5
    Regular Coder
    Join Date
    Jan 2008
    Posts
    216
    Thanks
    10
    Thanked 1 Time in 1 Post
    Quote Originally Posted by angst View Post
    ah, here's the problem:

    <form method="post" class="addform" action="">

    should include enctype. like:

    <form method="post" class="addform" action="" enctype="multipart/form-data">
    Thanks angst, really appreciate ur help

  • #6
    Regular Coder
    Join Date
    Jan 2008
    Posts
    216
    Thanks
    10
    Thanked 1 Time in 1 Post
    Angst I have tried to add in the upload code but im not sure if i have put it in the correct place in the code, there isnt any errors but it not posting the upload info to the database.

    here wat i have now:

    Code:
    <?php
    session_start(); 
    if(!isset($_SESSION['username'])){ 
    header("Location: index2.php"); 
    }  
    include("database.php");
    include("loginemployer.php");
    ?>
    
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Jobs4U</title>
    
    
    <!--CSS Stylesheet  -->
    	<link rel="stylesheet" type="text/css" href="./css/main.css" />
    	<link rel="stylesheet" type="text/css" href="./css/registerform.css" />
    	</head>
    
    	<body style="margin-left:1px;margin-right:1px;margin-bottom:0px;margin-top:0px;">
    	
    <!--Main Container  -->	
    	<div id="container">
    
    <!--Main Header  -->
    	<div id="header" style="width: 988px; height: 154px">
    		&nbsp;
    	</div>
    
    
    <!-- Navigation Menu -->
    	<div id="nav_menu">
    		<div class="link_container" style="width: 852px; height: 32px">
    			<a href="Index.php" class="main_nav">home</a><span class="link_separator">::</span>
    			<a href="page.htm" class="main_nav">products</a><span class="link_separator">::</span>
    			<a href="page.htm" class="main_nav">services</a><span class="link_separator">::</span>
    			<a href="page.htm" class="main_nav">about us</a><span class="link_separator">::</span>
    			<a href="page.htm" class="main_nav">contact</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    			<input type="text" name="search0" maxlength="30" size="30" >&nbsp;&nbsp;
    			<a href="page.htm" class="main_nav">Quick Search&gt;&gt;&gt;</a></div>
    	</div>
    
    <!-- Container (left) -->	
    	<div id="body">
    		<div id="body-left-panel" style="width: 654px; height: 981px">
    			<div style="padding:10px;">
    				
    <!-- Left container 1(Top) -->
    				<div class="box_upper_partviewdetails">
    					<img src="img/box_up-left_edge.png" alt="" class="align-left"/>
    					<img src="img/box_up-right_edge.png" alt="" class="align-right"/>
    					<span class="box_header">:: Add a Job</span></div>
    					
    <!--(Middle)  -->
    				<div class="box_middle_partaddjob">
    				<div class="pad_15tah">
    				
    <!--Register Form  --> 
    
    
    <?php 
    
    if (isset($_POST['submit'])) { 
    
    $error_stat = 0; 
    $jobtitle_message = '';
    $jobcatergory_message = '';
    $joblocation_message = '';
    $employmenttype_message = '';
    $salary_message = '';
    $date_message = '';
    $educationallevel_message = '';
    $description_message = '';
    
    
    
    
    $jobtitle = $_POST['jobtitle']; 
    $jobcatergory = $_POST['jobcatergory']; 
    $joblocation = $_POST['joblocation']; 
    $employmenttype= ($_POST['employmenttype']); 
    $salary = $_POST['salary']; 
    $date = $_POST['date']; 
    $educationallevel = $_POST['educationallevel']; 
    $description = $_POST['description']; 
    $name = $_POST['name'];
    $type = $_POST['type'];
    $size = $_POST['size'];
    $path = $_POST['path'];
    
    
    //Error checking 
    
    
    
    // Job Title check) 
    if (!$jobtitle) {
    //Set the error_stat to 1, which means that an error has occurred
    	$error_stat = 1;
    
    //Set the message to tell the user to enter a username
    	$jobtitle_message = '*Please enter a job title*';
    }
    
    else if (ctype_digit($jobtitle)) { 
       $error_stat = 1; 
       $jobtitle_message .= '*Invalid Job Title*'; 
    } 
    
    else if ( preg_match( '/\W/', $jobtitle)){
         $error_stat = 1; 
        $jobtitle_message = '*Invalid jobtitle, letters only, no spaces*'; 
    
    } 
    
    $jobtitle = $_POST['jobtitle']; 
    $jobtitle = trim($jobtitle); 
    
       if (strlen($jobtitle) > 30){ 
       $error_stat = 1; 
       $jobtitle_message = '*Job Title must be 20 characters or less*'; 
    } 
    
    
    
    
    
    
    //	Job Catergory Check)  
    if ($jobcatergory == 'Please Select'){
    //Set the error_stat to 1, which means that an error has occurred
    	$error_stat = 1;
    	$jobcatergory_message = '*Please select a Job Catergory*';
    }
    
    
    
    
    
    //	Job Location Check)  
    if ($joblocation == 'Please Select'){
    //Set the error_stat to 1, which means that an error has occurred
    	$error_stat = 1;
    	$joblocation_message = '*Please select a Job location*';
    }
    
    
    //	Employment Type Check)  
    if ($employmenttype == 'Please Select'){
    //Set the error_stat to 1, which means that an error has occurred
    	$error_stat = 1;
    	$employmenttype_message = '*Please select Employment type*';
    }
    
    
    
    
    
    // Salary check) 
    if (!$salary) {
    //Set the error_stat to 1, which means that an error has occurred
    	$error_stat = 1;
    
    //Set the message to tell the user to enter a username
    $salary_message = '*Please enter job salary*';
    }
    
    else if (!ctype_digit($salary)) { 
       $error_stat = 1; 
       $salary_message .= '*Invalid salary*'; 
    }
    
    
    
    
    //Date check) 
    if (empty($date)) {
    //Set the error_stat to 1, which means that an error has occurred
    	$error_stat = 1;
    
    //Set the message to tell the user to enter a dob
    $date_message = '*Please enter job closing date*';
    }
    
    //Check the format and explode into $parts
      elseif (!ereg("^([0-9]{2})/([0-9]{2})/([0-9]{4})$", 
              $date, $parts)){
     	$error_stat = 1; 	
    
    //Set the message to tell the user the date is invalid
    $date_message = '*Invalid date, must be DD/MM/YYYY format*';
    }
        
      elseif (!checkdate($parts[2],$parts[1],$parts[3]))
      {
      $error_stat = 1; 
      
      //Set the message to tell the date is invalid for the month entered
    	$date_message = '*Invalid date, month must be between 1-12*';
    }
      
    
    // Job Title check) 
    if (!$description) {
    //Set the error_stat to 1, which means that an error has occurred
    	$error_stat = 1;
    
    //Set the message to tell the user to enter a username
    	$description_message = '*Please enter a job description*';
    }
    
    $description = $_POST['description']; 
    $description = trim($description); 
    
       if (strlen($description) > 150){ 
       $error_stat = 1; 
       $description_message = '*Job Title must be 150 characters or less*'; 
    } 
    
      
      
      
    //	Educational Level Check)  
    if ($educationallevel == 'Please Select'){
    //Set the error_stat to 1, which means that an error has occurred
    	$error_stat = 1;
    	$educationallevel_message = '*Please select Educational level required*';
    }
    
    $uploadDir = 'upload/'; 
    
    if (isset($_POST['submit']) && $error_stat == 0) {
    
    
    	$fileName = $_FILES['userfile']['name'];
    	$tmpName  = $_FILES['userfile']['tmp_name'];
    	$fileSize = $_FILES['userfile']['size'];
    	$fileType = $_FILES['userfile']['type'];
    
        // the files will be saved in filePath 
        $filePath = $uploadDir . $fileName;
    
        // move the files to the specified directory
    	// if the upload directory is not writable or
    	// something else went wrong $result will be false
        $result    = move_uploaded_file($tmpName, $filePath);
    	
    	
    	include("database.php");
    
        if(!get_magic_quotes_gpc())
        {
            $fileName  = addslashes($fileName);
            $filePath  = addslashes($filePath);
        }  
        
    }
        
    $account = mysql_fetch_array(mysql_query("SELECT * FROM employers WHERE username='" . $_SESSION["username"] . "'")); 
    
    $username = $account["username"];
    
    //Then, only run the query if there were no errors (if $error_stat still equals 0) 
    if ($error_stat == 0) { 
       mysql_query("INSERT INTO job (username, jobtitle, jobcatergory, joblocation, employmenttype, salary, date, educationallevel, description, name, type, size, path) VALUES ('$username', '$jobtitle', '$jobcatergory', '$joblocation', '$employmenttype', '$salary', '$date', '$educationallevel', '$description', '$name', '$type', '$size', '$path')"); 
        
     echo "<h3>Registration Successful!</h3>"; 
       echo "<p>Thankyou, <b>$username</b>,registration was successful</p>"; 
       echo "<p>login.</p>";
      	echo "<a href=\"index2.php\">Login</a>";
      	
    }
    }
    
    
    
    //Then, for the form, only show it if 1) the form hasn't been submitted yet OR 2) there is an error 
    if (!isset($_POST['submit']) || $error_stat == 1) { 
    
    
    
    ?>

  • #7
    Senior Coder angst's Avatar
    Join Date
    Apr 2004
    Location
    Toronto, Ontario
    Posts
    2,114
    Thanks
    15
    Thanked 122 Times in 122 Posts
    the problem here is the last insert statement in your script, you need to make sure that all you values match.

    PHP Code:
       mysql_query("INSERT INTO job (username, jobtitle, jobcatergory, joblocation, employmenttype, salary, date, educationallevel, description, name, type, size, path) VALUES ('$username', '$jobtitle', '$jobcatergory', '$joblocation', '$employmenttype', '$salary', '$date', '$educationallevel', '$description', [B]'$fileName', '$fileType', '$fileSize', '$filePath')"); [/B
    here is the updated script:

    PHP Code:
    <?php
    session_start
    (); 
    if(!isset(
    $_SESSION['username'])){ 
    header("Location: index2.php"); 
    }  
    include(
    "database.php");
    include(
    "loginemployer.php");
    ?>


    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Jobs4U</title>


    <!--CSS Stylesheet  -->
        <link rel="stylesheet" type="text/css" href="./css/main.css" />
        <link rel="stylesheet" type="text/css" href="./css/registerform.css" />
        </head>

        <body style="margin-left:1px;margin-right:1px;margin-bottom:0px;margin-top:0px;">
        
    <!--Main Container  -->    
        <div id="container">

    <!--Main Header  -->
        <div id="header" style="width: 988px; height: 154px">
            &nbsp;
        </div>


    <!-- Navigation Menu -->
        <div id="nav_menu">
            <div class="link_container" style="width: 852px; height: 32px">
                <a href="Index.php" class="main_nav">home</a><span class="link_separator">::</span>
                <a href="page.htm" class="main_nav">products</a><span class="link_separator">::</span>
                <a href="page.htm" class="main_nav">services</a><span class="link_separator">::</span>
                <a href="page.htm" class="main_nav">about us</a><span class="link_separator">::</span>
                <a href="page.htm" class="main_nav">contact</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                <input type="text" name="search0" maxlength="30" size="30" >&nbsp;&nbsp;
                <a href="page.htm" class="main_nav">Quick Search&gt;&gt;&gt;</a></div>
        </div>

    <!-- Container (left) -->    
        <div id="body">
            <div id="body-left-panel" style="width: 654px; height: 981px">
                <div style="padding:10px;">
                    
    <!-- Left container 1(Top) -->
                    <div class="box_upper_partviewdetails">
                        <img src="img/box_up-left_edge.png" alt="" class="align-left"/>
                        <img src="img/box_up-right_edge.png" alt="" class="align-right"/>
                        <span class="box_header">:: Add a Job</span></div>
                        
    <!--(Middle)  -->
                    <div class="box_middle_partaddjob">
                    <div class="pad_15tah">
                    
    <!--Register Form  --> 


    <?php 

    if (isset($_POST['submit'])) { 

    $error_stat 0
    $jobtitle_message '';
    $jobcatergory_message '';
    $joblocation_message '';
    $employmenttype_message '';
    $salary_message '';
    $date_message '';
    $educationallevel_message '';
    $description_message '';




    $jobtitle $_POST['jobtitle']; 
    $jobcatergory $_POST['jobcatergory']; 
    $joblocation $_POST['joblocation']; 
    $employmenttype= ($_POST['employmenttype']); 
    $salary $_POST['salary']; 
    $date $_POST['date']; 
    $educationallevel $_POST['educationallevel']; 
    $description $_POST['description']; 
    $name $_POST['name'];
    $type $_POST['type'];
    $size $_POST['size'];
    $path $_POST['path'];


    //Error checking 



    // Job Title check) 
    if (!$jobtitle) {
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;

    //Set the message to tell the user to enter a username
        
    $jobtitle_message '*Please enter a job title*';
    }

    else if (
    ctype_digit($jobtitle)) { 
       
    $error_stat 1
       
    $jobtitle_message .= '*Invalid Job Title*'


    else if ( 
    preg_match'/\W/'$jobtitle)){
         
    $error_stat 1
        
    $jobtitle_message '*Invalid jobtitle, letters only, no spaces*'



    $jobtitle $_POST['jobtitle']; 
    $jobtitle trim($jobtitle); 

       if (
    strlen($jobtitle) > 30){ 
       
    $error_stat 1
       
    $jobtitle_message '*Job Title must be 20 characters or less*'







    //    Job Catergory Check)  
    if ($jobcatergory == 'Please Select'){
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;
        
    $jobcatergory_message '*Please select a Job Catergory*';
    }





    //    Job Location Check)  
    if ($joblocation == 'Please Select'){
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;
        
    $joblocation_message '*Please select a Job location*';
    }


    //    Employment Type Check)  
    if ($employmenttype == 'Please Select'){
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;
        
    $employmenttype_message '*Please select Employment type*';
    }





    // Salary check) 
    if (!$salary) {
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;

    //Set the message to tell the user to enter a username
    $salary_message '*Please enter job salary*';
    }

    else if (!
    ctype_digit($salary)) { 
       
    $error_stat 1
       
    $salary_message .= '*Invalid salary*'
    }




    //Date check) 
    if (empty($date)) {
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;

    //Set the message to tell the user to enter a dob
    $date_message '*Please enter job closing date*';
    }

    //Check the format and explode into $parts
      
    elseif (!ereg("^([0-9]{2})/([0-9]{2})/([0-9]{4})$"
              
    $date$parts)){
         
    $error_stat 1;     

    //Set the message to tell the user the date is invalid
    $date_message '*Invalid date, must be DD/MM/YYYY format*';
    }
        
      elseif (!
    checkdate($parts[2],$parts[1],$parts[3]))
      {
      
    $error_stat 1
      
      
    //Set the message to tell the date is invalid for the month entered
        
    $date_message '*Invalid date, month must be between 1-12*';
    }
      

    // Job Title check) 
    if (!$description) {
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;

    //Set the message to tell the user to enter a username
        
    $description_message '*Please enter a job description*';
    }

    $description $_POST['description']; 
    $description trim($description); 

       if (
    strlen($description) > 150){ 
       
    $error_stat 1
       
    $description_message '*Job Title must be 150 characters or less*'


      
      
      
    //    Educational Level Check)  
    if ($educationallevel == 'Please Select'){
    //Set the error_stat to 1, which means that an error has occurred
        
    $error_stat 1;
        
    $educationallevel_message '*Please select Educational level required*';
    }

    $uploadDir 'upload/'

    if (isset(
    $_POST['submit']) && $error_stat == 0) {


        
    $fileName $_FILES['userfile']['name'];
        
    $tmpName  $_FILES['userfile']['tmp_name'];
        
    $fileSize $_FILES['userfile']['size'];
        
    $fileType $_FILES['userfile']['type'];

        
    // the files will be saved in filePath 
        
    $filePath $uploadDir $fileName;

        
    // move the files to the specified directory
        // if the upload directory is not writable or
        // something else went wrong $result will be false
        
    $result    move_uploaded_file($tmpName$filePath);
        
        
        include(
    "database.php");

        if(!
    get_magic_quotes_gpc())
        {
            
    $fileName  addslashes($fileName);
            
    $filePath  addslashes($filePath);
        }  
        
    }
        
    $account mysql_fetch_array(mysql_query("SELECT * FROM employers WHERE username='" $_SESSION["username"] . "'")); 

    $username $account["username"];

    //Then, only run the query if there were no errors (if $error_stat still equals 0) 
    if ($error_stat == 0) { 
       
    mysql_query("INSERT INTO job (username, jobtitle, jobcatergory, joblocation, employmenttype, salary, date, educationallevel, description, name, type, size, path) VALUES ('$username', '$jobtitle', '$jobcatergory', '$joblocation', '$employmenttype', '$salary', '$date', '$educationallevel', '$description', '$fileName', '$fileType', '$fileSize', '$filePath')"); 
        
     echo 
    "<h3>Registration Successful!</h3>"
       echo 
    "<p>Thankyou, <b>$username</b>,registration was successful</p>"
       echo 
    "<p>login.</p>";
          echo 
    "<a href=\"index2.php\">Login</a>";
          
    }
    }



    //Then, for the form, only show it if 1) the form hasn't been submitted yet OR 2) there is an error 
    if (!isset($_POST['submit']) || $error_stat == 1) { 



    ?>


  •  

    Posting Permissions

    • You may not post new threads
    • You may not post replies
    • You may not post attachments
    • You may not edit your posts
    •