Uploading files/images via forms


Posted on 16th Feb 2014 07:03 pm by admin

Hey all, I am building a database for work that will contain some minor data on plant species along with 4 images. I have developed the form and am able to add the data but due to my abilities and I am stuck trying to get the images to post properly. I am looking for some help or better ways of doing what I am trying to do. Here is my code:
<?php // ivmdadd.php
require_once 'ivmlogin.php';
$db_server = mysql_connect($db_hostname, $db_username, $db_password);

if (!$db_server) die("Unable to connect to MySQL: " . mysql_error());

mysql_select_db($db_database, $db_server)
or die("Unable to select database: " . mysql_error());

// Start with the PHP code

$commonname = $scientificname = $class = $color = $controlcty = $wsdotrow = $prescription = "";

if (isset($_POST['commonname']))
$commonname = fix_string($_POST['commonname']);
if (isset($_POST['scientificname']))
$scientificname = fix_string($_POST['scientificname']);
if (isset($_POST['class']))
$class = fix_string($_POST['class']);
if (isset($_POST['color']))
$color = fix_string($_POST['color']);
if (isset($_POST['controlcty']))
$controlcty = fix_string($_POST['controlcty']);
if (isset($_POST['wsdotrow']))
$wsdotrow = fix_string($_POST['wsdotrow']);
if (isset($_POST['prescription']))
$prescription = fix_string($_POST['prescription']);

$fail = validate_commonname($commonname);



echo "<html><head><title>Add IVM Data</title>";

if ($fail == "") {
echo "</head><body>IVM data successfully validated and added to the database: $commonname,
$scientificname, $class, $color, $controlcty, $wsdotrow, $prescription, $name.</body></html>";

// databse post

$query = "INSERT INTO ivm_data(commonname, scientificname, class, color, controlcty, wsdotrow, prescription, name) VALUES('$commonname','$scientificname', '$class', '$color', '$controlcty', '$wsdotrow', '$prescription', '$name')";
$result = mysql_query($query);


exit;
}

// Now output the HTML and JavaScript code

echo <<<_END

<!-- The HTML section -->

<style>.signup { border: 1px solid #999999;
font: normal 14px helvetica; color:#444444; }</style>
<script type="text/javascript">
function validate(form)
{
fail = validatecommonname(form.commonname.value)
fail += validatescientificname(form.scientificname.value)
fail += validateclass(form.class.value)
fail += validatecolor(form.color.value)
fail += validatecontrolcty(form.controlcty.value)
fail += validatewsdotrow(form.wsdotrow.value)
if (fail == "") return true
else { alert(fail); return false }
}
</script></head>

<body>
<table class="signup" border="0" cellpadding="2"
cellspacing="5" bgcolor="#eeeeee">
<th colspan="2" align="center">Add Data to IVM Database</th>

<tr><td colspan="2"><br />
<p><font color=red size=1><i>$fail</i></font></p>
</td></tr>

<form method="post" action="ivmadd.php" enctype='multipart/form-data'>

<tr><td>Common Name</td><td><input type="text" maxlength="50"
name="commonname" value="$commonname" /></td>
</tr><tr><td>Scientific Name</td><td><input type="text" maxlength="50"
name="scientificname" value="$scientificname" /></td>
</tr><tr><td>Class</td><td><input type="text" maxlength="4"
name="class" value="$class" /></td><input type="text" maxlength="25"
name="color" value="$color" /></td>
</tr><tr><td>Required Control Counties</td><td><textarea name="controlcty" value="$controlcty" cols="50" rows="10" wrap="type"></textarea></td>
</tr><tr><td>On WSDOT ROW</td><td>Yes<input type="checkbox" name="wsdotrow" value="Yes" check="checked" />No<input type="checkbox" name="wsdotrow" value="No" /></td>
</tr><tr><td>Prescription</td><td><input type="text" maxlength="100"
name="prescription" value="$prescription" /></td>
</tr><tr><td>Image 1</td><td><input type='file' name='filename' size='50' />
<tr><td><input type="submit" value="Add" /></td>
</form></table>

<!-- The JavaScript section -->

<script type="text/javascript">
function validatecommonname(field) {
if (field == "") return "No Common Name was entered.\n"
return ""
}

</script></body></html>
_END;

echo "</body></html>";
//PHP functions

if ($_FILES)
{
$name = $_FILES['filename']['name'];
move_uploaded_file($_FILES['filename']['tmp_name'], $name);
echo "Uploaded image '$name'<br /><img src='$name' />";
}


function validate_commonname($field) {
if ($field == "") return "Please enter information<br />";
return "";
}

// function validate_scientificname($field) {
// if ($field == "") return "No scientificname was entered<br />";
// return "";
// }

// function validate_class($field) {
// if ($field == "") return "No class was entered<br />";
// else if (strlen($field) < 5)
// return "classs must be at least 5 characters<br />";
// else if (preg_match("/[^a-zA-Z0-9_-]/", $field))
// return "Only letters, numbers, - and _ in classs<br />";
// return "";
// }

// function validate_color($field) {
// if ($field == "") return "No color was entered<br />";
// else if (strlen($field) < 6)
// return "colors must be at least 6 characters<br />";
// else if ( !preg_match("/[a-z]/", $field) ||
// !preg_match("/[A-Z]/", $field) ||
// !preg_match("/[0-9]/", $field))
// return "colors require 1 each of a-z, A-Z and 0-9<br />";
// return "";
// }

// function validate_controlcty($field) {
// if ($field == "") return "No controlcty was entered<br />";
// else if ($field < 18 || $field > 110)
// return "controlcty must be between 18 and 110<br />";
// return "";
// }

// function validate_wsdotrow($field) {
// if ($field == "") return "No wsdotrow was entered<br />";
// else if (!((strpos($field, ".") > 0) &&
// (strpos($field, "@") > 0)) ||
// preg_match("/[^a-zA-Z0-9.@_-]/", $field))
// return "The wsdotrow address is invalid<br />";
// return "";
// }

function fix_string($string) {
if (get_magic_quotes_gpc()) $string = stripslashes($string);
return htmlentities ($string);
}

?>

Parsed in 0.122 seconds, using GeSHi 1.0.8.4

No comments posted yet

Your Answer:

Login to answer
207 Like 45 Dislike
Previous forums Next forums
Other forums

Coding Critique
I was hoping someone could take a second and look down my code and see if they see any problems with

help finding hacking loopholes
i was attacked by a redirect php injection

my pc is clean of viruses

so i figure that

RadioButtonList item spacing
I have a RadioButtonList and I can't put any spacing between the items. They are arranged verticall

Easy administration on MySQL databases
My website is database driven and I am very tired of manually making queries to my tables in order t

SOAP Issue
Hi,

I am facing some understanding problem with SOAP basic.kindly recommend some SOAP expert.

pass form variables straight to email, no database required?
hello all,

im working on this form...

http://www.adobedayevents.com/project_request/pr

Trouble with a select list
Hello All!
I was wondering if any of you guys could help me with a small problem I'm having!

Converting RGB values to HEX
Code: <?PHP

$file_handle = fopen("colors/rgb.csv", "r");

wh

Streaming local file from PHP while it’s been written to by a CURL process
I am creating a simple Proxy server for my website. Why I am not using mod_proxy and mod_cache is a

media recovery
Hi,
i startup the database i got the error

SQL> startup
ORACLE instance started.

Sign up to write
Sign up now if you have flare of writing..
Login   |   Register
Follow Us
Indyaspeak @ Facebook Indyaspeak @ Twitter Indyaspeak @ Pinterest RSS



Play Free Quiz and Win Cash