Dada78 Posted January 30, 2008 Share Posted January 30, 2008 I have a simple submission form where everything works on it. I just need one last thing to add and get working The form is below http://www.mesquitechristmas.com/local/submit.php I need to be able upload a file to my server and then store the url to that image in table in my DB. I already have the folder and field in the table set up. So if anyone can tell me or show me how I can integrate this into the form I have now that would be great. The current code to the file is below. <?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($_POST['displayname'])) $error = '*Please fill in displayname field.'; elseif(empty($_POST['displaytype'])) $error = '*Please fill in displaytype field.'; elseif(empty($_POST['description'])) $error = '*Please fill in description field.'; elseif(empty($_POST['address'])) $error = '*Please fill in address field.'; elseif(empty($_POST['city'])) $error = '*Please fill in city field.'; elseif(empty($_POST['state'])) $error = '*Please fill in state field.'; elseif(empty($_POST['postal'])) $error = '*Please fill in postal field.'; elseif(empty($_POST['country'])) $error = '*Please fill in country field.'; else { // 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']; $imgdata = file_get_contents($_FILES['imgdata']['tmp_name']); mysql_query("INSERT INTO users (displayname, displaytype, description, address, address2, city, state, postal, country, website) VALUES ('$displayname', '$displaytype', '$description', '$address', '$address2', '$city', '$state', '$postal', '$country', '$website')")or die (mysql_error()); } } ?> <!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 - Display Submission</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" value="<?php echo $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"><?php echo $description; ?></textarea></td></tr> <tr><td>Address*</td><td><input name="address" value="<?php echo $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://<?php echo $website; ?>" type="text"></td></tr> <tr><td>Picture*</td><td><input type="file" name="imgdata" 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 colspan="2" style="border-top: 1px solid black;" align="right"> <br /> <input name="submit" value="Submit Now" type="submit"></td></tr> </tbody></table></form> <br>* Fields are required. <br> </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 in Advance Quote Link to comment Share on other sites More sharing options...
cooldude832 Posted January 30, 2008 Share Posted January 30, 2008 why would you need to store its url in the database if you can build the url to be reflective of the given image through the database i.e rename it on upload to Uploader_ID_Image_ID.jpg for example and now you know its address Quote Link to comment Share on other sites More sharing options...
laffin Posted January 30, 2008 Share Posted January 30, 2008 heh nice and easy way there cooldude, usually i go with a md5 hash or similar. but than naming conventions dun make sense, i like the method u describe cuz ya can visually see who has a lot of image uploads. Not only that, u can lookup the user from the filename. Quote Link to comment Share on other sites More sharing options...
Dada78 Posted January 30, 2008 Author Share Posted January 30, 2008 why would you need to store its url in the database if you can build the url to be reflective of the given image through the database i.e rename it on upload to Uploader_ID_Image_ID.jpg for example and now you know its address Because it saves space in the database from having huge files stored in the database when you can store the actual images on the server then store the URL to the image so you can call it later where you need it with a simple echo statement. For example the pictures on this page uses this method. http://www.mesquitechristmas.com/local/browse.php They are being called from the database with a stored URL. So for example the file is uploaded to file on the server then the URL is stored in a field in the table like this /local/submitted/0003.JPG Then with a simple echo I can display the image like shown on those pages and not waste space and drain MySQL resrouces. Those pictures I have manually inserted so I can test but now I need a way to upload these to the server then store the URL like above in the DB so I can call the pictures where I need them. Please don't question the way I want to do something unless you want to build something better for me that won't drain MySQL resources. Otherwise if you know how I can do what I am needing done then I am open to learn. -Thanks Quote Link to comment Share on other sites More sharing options...
laffin Posted January 30, 2008 Share Posted January 30, 2008 no not a stored url usually it has the base path for pics set $picdir="/images"; than in the db the only thing stored is the filename <A IMG SRC="$picdir/$smilie[0]"> that's what cooldude is saying, not storing the image in the db itself. but renaming the uploaded image file, to something sensible (this shud also prevent naming conflicts). thus if ya was user 1, cooldude 2, and myself 3. ya wud have a uploaded images folder with 0001_0001.jpg 0001_0002.gif 0002_0001.jpg 0002_0002.jpg 0002_0003.jpg 0003_0001.png with a db structure as TABLE images ( id integer unsigned primary key autoincrement, filename varchar(80) not null default '', userid integer unsigned not null default '0' ); u can quickly build the url with this info alone. Quote Link to comment Share on other sites More sharing options...
Dada78 Posted January 30, 2008 Author Share Posted January 30, 2008 That won't work because I need the image base path to be on the same row with the rest of the users display information, not in another table. Naming won't be an issue because you can set the image name when it is uploaded where each one will be different. Reason being if the users display information is id100 and the image is id2 you are going to have a hard time getting the right image to the right display. Can anyone help me with what I AM wanting to do? All I need is help with uploading a file to a folder on my server and storing the base path in the database which I already have created. Anyone know how to do this or point me where I can learn how to do this? -Thanks Quote Link to comment Share on other sites More sharing options...
cooldude832 Posted January 30, 2008 Share Posted January 30, 2008 the naming scheme behind the images shouldn't be additional storage period the additional info like original file name, file size, MIME, META data etc should go into mysql and your viewing of images can be done all through a dynamic php script that redistros the images like image_view.php?img=54_23.jpg <?php $temp = explode(".",$img); $img = $temp[0]; $q = "Select * from `image_table` where img_id = '".$img."'"; $r = mysql_query($q) or die(mysql_error()."<br /><br />".$q); if(mysql_num_rows($r) >0){ # its an image $row = mysql_fetch_assoc($r); if(is_file(IMG_BASE_DIR.".$_GET['img'])){ #its an image lets get its data using image from jpeg or png etc #also can display info about said img from MySQL } } ?> Quote Link to comment Share on other sites More sharing options...
Dada78 Posted January 30, 2008 Author Share Posted January 30, 2008 Can anyone help me with what I AM wanting to do? All I need is help with uploading a file to a folder on my server and storing the base path in the database which I already have created. Anyone know how to do this or point me where I can learn how to do this? -Thanks Quote Link to comment Share on other sites More sharing options...
rhodesa Posted January 30, 2008 Share Posted January 30, 2008 Follow the examples on this page: http://us.php.net/manual/en/features.file-upload.php Quote Link to comment Share on other sites More sharing options...
Dada78 Posted January 30, 2008 Author Share Posted January 30, 2008 Can anyone help me with what I AM wanting to do? All I need is help with uploading a file to a folder on my server and storing the base path in the database which I already have created. Anyone know how to do this or point me where I can learn how to do this? -Thanks Quote Link to comment Share on other sites More sharing options...
rhodesa Posted January 30, 2008 Share Posted January 30, 2008 Ug... What is the name of the column in the table that will hold the filename? You don't have one listed in your code posted. Also, to properly store the file, you should rename it to whatever unique id you are using for each user. What is your unique identifier? Quote Link to comment Share on other sites More sharing options...
Dada78 Posted January 30, 2008 Author Share Posted January 30, 2008 The field name is "imgurl" the text field name is listed in the code in the first post. Also, to properly store the file, you should rename it to whatever unique id you are using for each user. What is your unique identifier? That is what I planned to do and wanted to do. The unique identifier is id. Quote Link to comment Share on other sites More sharing options...
rhodesa Posted January 30, 2008 Share Posted January 30, 2008 imgurl is not listed in the original post... try this <?php $image_dir = 'images/'; // 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($_POST['displayname'])) $error = '*Please fill in displayname field.'; elseif(empty($_POST['displaytype'])) $error = '*Please fill in displaytype field.'; elseif(empty($_POST['description'])) $error = '*Please fill in description field.'; elseif(empty($_POST['address'])) $error = '*Please fill in address field.'; elseif(empty($_POST['city'])) $error = '*Please fill in city field.'; elseif(empty($_POST['state'])) $error = '*Please fill in state field.'; elseif(empty($_POST['postal'])) $error = '*Please fill in postal field.'; elseif(empty($_POST['country'])) $error = '*Please fill in country field.'; elseif(!is_uploaded_file($_FILES['imgdata']['tmp_name']) $error = '*Please upload a picture.'; else{ // MAKE CONNECTION include ('db_connect.php'); $displayname = mysql_real_escape_string($_POST['displayname']); $displaytype = mysql_real_escape_string($_POST['displaytype']); $description = mysql_real_escape_string($_POST['description']); $address = mysql_real_escape_string($_POST['address']); $address2 = mysql_real_escape_string($_POST['address2']); $city = mysql_real_escape_string($_POST['city']); $state = mysql_real_escape_string($_POST['state']); $postal = mysql_real_escape_string($_POST['postal']); $country = mysql_real_escape_string($_POST['country']); $website = mysql_real_escape_string($_POST['website']); //Add user mysql_query("INSERT INTO users (displayname, displaytype, description, address, address2, city, state, postal, country, website) VALUES ('$displayname', '$displaytype', '$description', '$address', '$address2', '$city', '$state', '$postal', '$country', '$website')")or die (mysql_error()); //Move image $userid = mysql_insert_id(); $ext = substr($_FILES['userfile']['tmp_name'], strrpos($_FILES['userfile']['tmp_name'], '.') + 1); $filename = $userid.$ext; if(!move_uploaded_file($_FILES['userfile']['tmp_name'], $image_dir.$filename)) die("Failed to upload file"); } //Add filename to DB mysql_query("UPDATE users SET imgurl = '".mysql_real_escape_string($filename)."' WHERE id = '$userid'"); } ?> Quote Link to comment Share on other sites More sharing options...
Dada78 Posted January 30, 2008 Author Share Posted January 30, 2008 I want to thank you for your help first off. Ok I have tired this and I when I submit the form I get this error Failed to upload file Is their something I need to set for this first? Also I am curious, what does mysql_real_escape_string do? <?php $image_dir = '/local/submitted/'; // 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($_POST['displayname'])) $error = '*Please fill in displayname field.'; elseif(empty($_POST['displaytype'])) $error = '*Please fill in displaytype field.'; elseif(empty($_POST['description'])) $error = '*Please fill in description field.'; elseif(empty($_POST['address'])) $error = '*Please fill in address field.'; elseif(empty($_POST['city'])) $error = '*Please fill in city field.'; elseif(empty($_POST['state'])) $error = '*Please fill in state field.'; elseif(empty($_POST['postal'])) $error = '*Please fill in postal field.'; elseif(empty($_POST['country'])) $error = '*Please fill in country field.'; elseif(!is_uploaded_file($_FILES['imgdata']['tmp_name'])) $error = '*Please upload a picture.'; else{ // MAKE CONNECTION include ('db_connect.php'); $displayname = mysql_real_escape_string($_POST['displayname']); $displaytype = mysql_real_escape_string($_POST['displaytype']); $description = mysql_real_escape_string($_POST['description']); $address = mysql_real_escape_string($_POST['address']); $address2 = mysql_real_escape_string($_POST['address2']); $city = mysql_real_escape_string($_POST['city']); $state = mysql_real_escape_string($_POST['state']); $postal = mysql_real_escape_string($_POST['postal']); $country = mysql_real_escape_string($_POST['country']); $website = mysql_real_escape_string($_POST['website']); //Add user mysql_query("INSERT INTO users (displayname, displaytype, description, address, address2, city, state, postal, country, website) VALUES ('$displayname', '$displaytype', '$description', '$address', '$address2', '$city', '$state', '$postal', '$country', '$website')")or die (mysql_error()); //Move image $userid = mysql_insert_id(); $ext = substr($_FILES['userfile']['tmp_name'], strrpos($_FILES['userfile']['tmp_name'], '.') + 1); $filename = $userid.$ext; if(!move_uploaded_file($_FILES['userfile']['tmp_name'], $image_dir.$filename)) die("Failed to upload file"); } //Add filename to DB mysql_query("UPDATE users SET imgurl = '".mysql_real_escape_string($filename)."' WHERE id = '$userid'"); } ?> -Thanks Quote Link to comment Share on other sites More sharing options...
rhodesa Posted January 30, 2008 Share Posted January 30, 2008 The PHP website (http://us3.php.net/mysql_real_escape_string) explains it well try this...added some more error reporting: <?php $image_dir = '/local/submitted/'; if(!is_dir($image_dir)) die("Image dir does not exist"); if(!is_writable($image_dir)) die("Image dir is not writable"); // 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($_POST['displayname'])) $error = '*Please fill in displayname field.'; elseif(empty($_POST['displaytype'])) $error = '*Please fill in displaytype field.'; elseif(empty($_POST['description'])) $error = '*Please fill in description field.'; elseif(empty($_POST['address'])) $error = '*Please fill in address field.'; elseif(empty($_POST['city'])) $error = '*Please fill in city field.'; elseif(empty($_POST['state'])) $error = '*Please fill in state field.'; elseif(empty($_POST['postal'])) $error = '*Please fill in postal field.'; elseif(empty($_POST['country'])) $error = '*Please fill in country field.'; elseif(!is_uploaded_file($_FILES['imgdata']['tmp_name'])) $error = '*Please upload a picture.'; else{ // MAKE CONNECTION include ('db_connect.php'); $displayname = mysql_real_escape_string($_POST['displayname']); $displaytype = mysql_real_escape_string($_POST['displaytype']); $description = mysql_real_escape_string($_POST['description']); $address = mysql_real_escape_string($_POST['address']); $address2 = mysql_real_escape_string($_POST['address2']); $city = mysql_real_escape_string($_POST['city']); $state = mysql_real_escape_string($_POST['state']); $postal = mysql_real_escape_string($_POST['postal']); $country = mysql_real_escape_string($_POST['country']); $website = mysql_real_escape_string($_POST['website']); //Add user mysql_query("INSERT INTO users (displayname, displaytype, description, address, address2, city, state, postal, country, website) VALUES ('$displayname', '$displaytype', '$description', '$address', '$address2', '$city', '$state', '$postal', '$country', '$website')")or die (mysql_error()); //Move image $userid = mysql_insert_id(); $ext = substr($_FILES['userfile']['tmp_name'], strrpos($_FILES['userfile']['tmp_name'], '.') + 1); $filename = $userid.$ext; if(!move_uploaded_file($_FILES['userfile']['tmp_name'], $image_dir.$filename)) die("Failed to upload file to ".$image_dir.$filename); } //Add filename to DB mysql_query("UPDATE users SET imgurl = '".mysql_real_escape_string($filename)."' WHERE id = '$userid'"); } ?> Quote Link to comment Share on other sites More sharing options...
Dada78 Posted January 30, 2008 Author Share Posted January 30, 2008 Ok it is saying Image dir does not exist But it does exist because these pictures are in that folder http://www.mesquitechristmas.com/local/submitted/0003.JPG This is how I have it set $image_dir = '/local/submitted/'; Any idea what I am doing wrong? -Thanks Quote Link to comment Share on other sites More sharing options...
rhodesa Posted January 30, 2008 Share Posted January 30, 2008 yup...when managing files on the system, you need the system path, so on windows something like "C:\www\htdocs\" an easy way to calculate this is using: $image_dir = dirname(__FILE__).'/local/submitted/'; dirname(__FILE__) will give you the system path to the directory the current php file is in. Quote Link to comment Share on other sites More sharing options...
Dada78 Posted January 30, 2008 Author Share Posted January 30, 2008 Ok I have tried it like this. $image_dir = '/public_html/local/submitted/'; and like suggested above like this $image_dir = dirname(__FILE__).'/local/submitted/'; And I am still getting "Image dir does not exist". What am I missing? Quote Link to comment Share on other sites More sharing options...
rhodesa Posted January 30, 2008 Share Posted January 30, 2008 Where is this page relative to /local/submitted? Is this php file in /local? If so, use the following: $image_dir = dirname(__FILE__).'/submitted/'; Quote Link to comment Share on other sites More sharing options...
Dada78 Posted January 30, 2008 Author Share Posted January 30, 2008 Ok tried this. $image_dir = dirname(__FILE__).'/submitted/'; if(!is_dir($image_dir)) die("Image dir does not exist"); if(!is_writable($image_dir)) die("Image dir is not writable"); I am not getting the Image dir error anymore, but I am getting "Failed to upload file" error Quote Link to comment Share on other sites More sharing options...
rhodesa Posted January 30, 2008 Share Posted January 30, 2008 You missed one other line of error checking I added before. Change that line to: die("Failed to upload file to ".$image_dir.$filename); This way it tells us what filename it is trying to write to Quote Link to comment Share on other sites More sharing options...
Dada78 Posted January 30, 2008 Author Share Posted January 30, 2008 Failed to upload file to /home/mesquit1/public_html/local/submitted/70 Quote Link to comment Share on other sites More sharing options...
rhodesa Posted January 30, 2008 Share Posted January 30, 2008 Oops...replace that block with this updated version: //Move image $userid = mysql_insert_id(); $ext = substr($_FILES['imgdata']['tmp_name'], strrpos($_FILES['imgdata']['tmp_name'], '.') + 1); $filename = $userid.$ext; if(!move_uploaded_file($_FILES['imgdata']['tmp_name'], $image_dir.$filename)) die("Failed to upload file to ".$image_dir.$filename); Quote Link to comment Share on other sites More sharing options...
Dada78 Posted January 30, 2008 Author Share Posted January 30, 2008 I got this error Warning: move_uploaded_file(/home/mesquit1/public_html/local/submitted/73var/tmp/phpcAvMv2) [function.move-uploaded-file]: failed to open stream: No such file or directory in /home/mesquit1/public_html/local/submit.php on line 49 Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/var/tmp/phpcAvMv2' to '/home/mesquit1/public_html/local/submitted/73var/tmp/phpcAvMv2' in /home/mesquit1/public_html/local/submit.php on line 49 Failed to upload file to /home/mesquit1/public_html/local/submitted/73var/tmp/phpcAvMv2 Line 49 is this line. if(!move_uploaded_file($_FILES['imgdata']['tmp_name'], $image_dir.$filename)) Here is the entire code. <?php $image_dir = dirname(__FILE__).'/submitted/'; if(!is_dir($image_dir)) die("Image dir does not exist"); if(!is_writable($image_dir)) die("Image dir is not writable"); // 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($_POST['displayname'])) $error = '*Please fill in displayname field.'; elseif(empty($_POST['displaytype'])) $error = '*Please fill in displaytype field.'; elseif(empty($_POST['description'])) $error = '*Please fill in description field.'; elseif(empty($_POST['address'])) $error = '*Please fill in address field.'; elseif(empty($_POST['city'])) $error = '*Please fill in city field.'; elseif(empty($_POST['state'])) $error = '*Please fill in state field.'; elseif(empty($_POST['postal'])) $error = '*Please fill in postal field.'; elseif(empty($_POST['country'])) $error = '*Please fill in country field.'; elseif(!is_uploaded_file($_FILES['imgdata']['tmp_name'])) $error = '*Please upload a picture.'; else{ // MAKE CONNECTION include ('db_connect.php'); $displayname = mysql_real_escape_string($_POST['displayname']); $displaytype = mysql_real_escape_string($_POST['displaytype']); $description = mysql_real_escape_string($_POST['description']); $address = mysql_real_escape_string($_POST['address']); $address2 = mysql_real_escape_string($_POST['address2']); $city = mysql_real_escape_string($_POST['city']); $state = mysql_real_escape_string($_POST['state']); $postal = mysql_real_escape_string($_POST['postal']); $country = mysql_real_escape_string($_POST['country']); $website = mysql_real_escape_string($_POST['website']); //Add user mysql_query("INSERT INTO users (displayname, displaytype, description, address, address2, city, state, postal, country, website) VALUES ('$displayname', '$displaytype', '$description', '$address', '$address2', '$city', '$state', '$postal', '$country', '$website')")or die (mysql_error()); //Move image $userid = mysql_insert_id(); $ext = substr($_FILES['imgdata']['tmp_name'], strrpos($_FILES['imgdata']['tmp_name'], '.') + 1); $filename = $userid.$ext; if(!move_uploaded_file($_FILES['imgdata']['tmp_name'], $image_dir.$filename)) die("Failed to upload file to ".$image_dir.$filename); } //Add filename to DB mysql_query("UPDATE users SET imgurl = '".mysql_real_escape_string($filename)."' WHERE id = '$userid'"); } ?>[\code] -Thanks Quote Link to comment Share on other sites More sharing options...
rhodesa Posted January 30, 2008 Share Posted January 30, 2008 after if(isset($_POST['submit'])){ put print_r($_FILE);exit; and tell me what it says Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.