Jump to content

Recommended Posts

I have a form that is submit to a DB and it was working until I started to clean up the code and put in the ability to upload an image to the file system that will submit the URL to the DB. Well I have it set up that if the user has not filed out an required field it is suppose to display an error. Well you can leave all of them empty and hit submit and no error will come up. Also when the form has been filled out correctly it is suppose to redirect you to http://www.mesquitechristmas.com/local/user.php but it doesn't even do that. Can someone tell me where I might have gone wrong.

 

The form can be found here.

 

http://www.mesquitechristmas.com/local/submit.php

 

Here is the code I am working with

 

<?php



// here, we check if the form has been submitted, because we need to handle
// redirection before we handle outputting the HTML stuff.

if (isset($_POST['submit'])) 
{
    if (!empty($_REQUEST['displayname']))
            $displayname = $_REQUEST['displayname'];
    else
    $error = 'Please enter a name for your display.';  

     if (!empty($_REQUEST['displaytype']))
            $displaytype = $_REQUEST['displaytype'];
    else
    $error = 'Please select a display type.';

     if (!empty($_REQUEST['description']))
            $description = $_REQUEST['description'];
    else
    $error = 'Please include a brief description about your display.';

     if (!empty($_REQUEST['address']))
            $address = $_REQUEST['address'];
    else
    $error = 'Please enter your display address.';

     if (!empty($_REQUEST['city']))
            $city = $_REQUEST['city'];
    else
    $error = 'Please enter your city.';

     if (!empty($_REQUEST['state']))
            $state = $_REQUEST['state'];
    else
    $error = 'Please enter your state.';

     if (!empty($_REQUEST['postal']))
            $postal = $_REQUEST['postal'];
    else
    $error = 'Please enter your zipcode.';

     if (!empty($_REQUEST['country']))
            $country = $_REQUEST['country'];
    else
    $error = 'Please enter your country.';

     if (!empty($_REQUEST['image']))
            $image = $_REQUEST['image'];
    else
    $error = 'Please upload an picture of your display.';

    if (empty($errors))

// MAKE CONNECTION
include ('db_connect.php'); 

$displayname = $_POST['displayname'];
$displaytype = $_POST['displaytype'];
$description = $_POST['description'];
$address = $_POST['address'];
$address2 = $_POST['address2'];
$city = $_POST['city'];
$state = $_POST['state'];
$postal = $_POST['postal'];
$country = $_POST['country'];
$website = $_POST['website'];

$file=$_FILES['image']['tmp_name']; // its an image, get its temp name
$type = $_FILES['image']['type'];

if(is_uploaded_file($file))  // make sure the file is uploaded before we proceed
{
if($type == 'image/gif' || $type == 'image/jpeg') // check and see if the file type is an image
{
	$image_name=$_FILES['image']['name']; // get image name
	$uploaddir='/local/submitted/'; // set the path to the image dir 
	$uploaddir.=$image_name; // set upload path including the filename		
}
else
{ // set error message because file was not an image
	$error='The file you have attempted to upload is not an image. For security reasons, only images are allowed';
}

if(move_uploaded_file($_FILES['image']['tmp_name'], $uploaddir)) 
{ // if file was moved into the directory 
	$message.= 'Successfully uploaded file '.$image_name ;
}
else 
{ // set error message saying that file was not uploaded
	$error='There was a problem uploading the file';
}
	mysql_query("INSERT INTO users (displayname, displaytype, description, address, address2, city, state, postal, country, website, image_path) VALUES ('$displayname', '$displaytype', '$description', '$address', '$address2', '$city', '$state', '$postal', '$country', '$website', '$image_name')"); // setup our query
	echo $query;
                $result=mysql_query($query) or die(mysql_error()); // run our query

	// set our message to say it was successful
	$message='Successfully added info to database';  

                header('Location: user.php');

}
}

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta name="description" content="Mesquite Texas Country Christmas" />
<meta name="keywords" content="Mesquite, Texas, Country Christmas" />
<meta name="author" content="NA" />
<link rel="stylesheet" type="text/css" href="/stylesheet.css" media="screen" title="FBC" />
<script type="text/javascript" src="drop_down.js"></script>
<title>A Mesquite Country Christmas</title>
</head>
<body>

<div id="wrap">

<a href="/index.html">
<img id="frontphoto" src="/images/header.png" width="760" height="237" alt="Mesquite Country Christmas" border="0"></a>

<div id="menu">

<h2 class="hide">Menu:</h2>

<ul id="avmenu">
<li><a href="/index.html">Home</a></li>
<li><a href="/christmasstory.html">The Christmas Story</a></li>
<li><a href="/directions.html">Directions</a></li>
<li><a href="#">Information</a><ul>
      <li><a href="/information.html">Display Facts & Info</a></li>
      <li><a href="/faq.html">FAQ</a></li>
      <li><a href="/playlist.html">2008 Playlist</a></li>
      <li><a href="#">Christmas History</a></li>
  </ul></li>
<li><a href="#">Photos</a>
  <ul>
      <li><a href="/2007photos.html">2007</a></li>
  </ul></li>
<li><a href="#">Videos</a>
  <ul>
      <li><a href="/2007videos.html">2007</a></li>
  </ul></li>
<li><a href="/guestbook.php">Guestbook</a></li>
<li><a href="/webcam.html">Web Cam</a></li>
<li><a href="/webradio.html">Internet Radio</a></li>
<li><a href="http://www.noradsanta.org/" TARGET="_blank">Track Santa</a></li>
<li><a href="/projects.html">Projects & How Tos</a></li>
<li><a href="/links.html">Links</a></li>
<li><a href="/contact_us.html">Contact Us</a></li>
</ul>

<center><a href="http://www.toysfortots.org/" TARGET="_blank"><img src="/images/toys_for_tots.jpg" border="0" width="110" height="153" vspace="10"></a></center>

<center><a href="http://christmas.bronners.com/2007/house/534.html"><img src="http://christmas.bronners.com/voteforme/vote.jpg" border="0" width="110" height="153" alt="christmas decorations" vspace="10"></a></center>

</div>

<div id="content">

<div class="fadebox">

<h2> Submit your Lights</h2>

<hr />

<p><img src="/images/christmas-lights.jpg" width="153" height="208" alt="Submit Lights" align="left" border="0" hspace="10"> Thank you for submitting your home to the Mesquites Country Christmas display finder database.  There are some things you should know before submitting to make your experience a pleasant one.</p><p>First of all, we do not release your personal information to anyone for any reason.  The only exception to this, obviously, is the address of the display, the website (if it has one), and a picture of the display.</p><p>Secondly, please have a picture available to use for your display.  You won't be able to submit your display without one.  When submitting a picture, please make sure that the file is less than one megabyte (1 Meg or 1024k), and if possible, resize it to 640x480. Please also be sure your picture is in JPG format.</p><p>Your display will not immediately be entered into the Christmas Light Finder database.  We will first have to approve your submission.  This is so that those unscrupulous folks out there can't submit unacceptable pictures (not family friendly).  Please allow up to 48 hours to be included into the database, though, the time before insertion is usually much shorter than that.</p>

</div>

<div class="fadebox">

<h2> Ready to submit? Fill out the form below:</h2>

<hr />

<br />

<form enctype="multipart/form-data" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<table>
<tr>
  <td>Display Name*</td><td><input name="displayname" size="40" type="text"></td></tr>

<tr> 
  <td>Display Type*</td><td><select name="displaytype"><option value="Residential">Residential</option><option value="Neighborhood">Neighborhood</option><option value="Commercial">Commercial</option><option value="City/Government">City/Government</option><option value="Sponsored">Sponsored</option></select></td></tr>

<tr><td>Description*</td><td><textarea name="description" cols="30" rows="5"></textarea></td></tr>

<tr><td>Address*</td><td><input name="address" size="40" type="text"></td></tr><tr><td>Address 2</td><td><input name="address2" size="40" type="text"></td></tr>

<tr><td>City*</td><td><input name="city" size="30" type="text" value="Mesquite"></td></tr>

<tr><td>State/Province*</td><td><input name="state" size="30" type="text" value="Texas"></td></tr>

<tr><td>Postal Code*</td><td><select name="postal"><option value="75149">75149</option><option value="75150">75150</option><option value="75180">75180</option><option value="75181">75181</option><option value="75185">75185</option><option value="75187">75187</option></select></td></tr>

<tr><td>Country*</td><td><input name="country" size="30" type="text" value="United States"></td></tr>

<tr><td>Website</td><td><input name="website" size="50" value="http://" type="text"></td></tr>

<tr><td>Picture*</td><td><input type="file" name="image" id="image" size="35"></td></tr>

<tr>
<td colspan="2" align="right" class="errorText">
<?PHP
// then we check for the error message
if (isset($error)) {
   echo $error . '<br />';
}
?> 
</td>
</tr>
<tr>

<td style="border-top: 1px solid black;" align="left"> * Fields are required.</td>

<td  colspan="2" style="border-top: 1px solid black;" align="right">

<input name="submitted" value="Submit Now" type="submit"></td></tr>

</tbody></table></form>




   </div>
</div>

<div id="footer">
© 2007 Mesquite Country Christmas

<br />
<br />

<script type="text/javascript"><!--
google_ad_client = "pub-8048181801684156";
//468x60, created 1/8/08
google_ad_slot = "0360766123";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>


</div>

</div>
</body>
</html>

 

-Thanks

 

 

Link to comment
https://forums.phpfreaks.com/topic/87182-help-with-form-submission/
Share on other sites

well mine is going to be different from yours because I am uploading my images to the file system to save room in the DB. Then having the URL to the image URL inserted in the DB. Then I just call the image via a URL. Only problem is I can't get anything to insert to the DB and I get no errors.

this will work better for the redirect

 

<?php

$url = 'user.php';
header("Location: $url");

?>

 

That does pretty much what mine does now only you are defining a var for user.php.

 

The sql structure is my first post.

 

The DB structure for the img is this.

 

`imgurl` varchar(255) NOT NULL,

 

 

 

 

this will work better for the redirect

 

<?php

$url = 'user.php';
header("Location: $url");

?>

 

right but you used single ' and it should be double "

 

That does pretty much what mine does now only you are defining a var for user.php.

 

The sql structure is my first post.

 

The DB structure for the img is this.

 

`imgurl` varchar(255) NOT NULL,

 

 

 

 

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.