Problems Posting a Form to MySQL

Hi all,
I’m a pretty novice coder looking for some help. I made this form, but the information is not posting to the database (I’m pretty sure this is a problem with my PHP but four days of staring and researching hasn’t helped yet…). I’ve made many successful VERY simple forms, but none where the user already has to be logged in and I am posting to a specific id. Is that my problem? My check to see if the user is logged in works just fine, the form just isn’t passing the values on…

[php]

<?php error_reporting(E_ALL); ini_set('display_errors', '1'); $thisPage="Profile"; require("common.php"); //At the top of the page we check to see whether the user is logged in or not if (empty($_SESSION['user'])) { $url = 'register_login.php'; echo ''; } $errorMsg = ""; $successMsg = FALSE; $link = mysql_pconnect($host, $username, $password); $db = mysql_select_db ($dbname); if (@$_POST["submitted"] == "yes") { $firstname = $_POST["firstname"]; $lastname = $_POST["lastname"]; $email = $_POST["email"]; $phone = $_POST["phone"]; $address = $_POST["address"]; $city = $_POST["city"]; $state = $_POST["state"]; $zip = $_POST["zip"]; $stateid = $_POST["stateid"]; $query = "INSERT INTO login (firstname, lastname, email, phone, address, city, state, zip, stateid) VALUES ("; //$query .= "'" . addslashes_mssql($description) . "',"; $query .= "'" . $firstname . "', "; $query .= "'" . $lastname . "', "; $query .= "'" . $email . "', "; $query .= "'" . $phone . "', "; $query .= "'" . $address . "', "; $query .= "'" . $city . "', "; $query .= "'" . $state . "', "; $query .= "'" . $zip . "', "; $query .= "'" . $stateid . "', "; $query .= ");"; $result = mysql_query($query); $errorMsg = 'Thank you! You have filled out your profile for ***.'; $successMsg = TRUE; } include 'ssi_header.php'; ?>
<?php include 'ssi_navigation.php'; ?>
	<div id="page">
		<div id="content">
			<div class="post">
				<h2 class="title"><a href="#">My Profile</a></h2>
				<div style="clear: both;">&nbsp;</div>
				<div class="entry">
				<?php
	if ($errorMsg != "") { echo("<font color=\"#B2060C\">" . $errorMsg . "</font><br /><br />"); }
	
	if (!$successMsg) {
					?> 

			<p>
			<form action="profile_add.php" method="post" name="main">
    
    	<table cellpadding="6" cellspacing="0" border="0" class="text" style="margin-left:20px;">
			<tr>
				<th align="right">First Name:</th>
				<td><input type="text" name="firstname" id="firstname" size="50" maxlength="50" /></td>
				<td><div class="error" id="firstnameError">Required</div></td>
			</tr>
			<tr>
				<th align="right">Last Name:</th>
				<td><input type="text" name="lastname" id="lastname" size="50" maxlength="50" /></td>
				<td><div class="error" id="lastnameError">Required</div></td>
			</tr>
			<tr>
				<th align="right">Email address:</th>
				<td><input type="text" name="email" id="email" size="50" maxlength="100" /></td>
				<td><div class="error" id="nameError">Required</div></td>
			</tr>
			<tr>
				<th align="right">Phone:</th>
				<td><input type="text" name="phone" id="phone" size="50" maxlength="10" /><br>(ten digits, no spaces or dashes.)</td>
				<td><div class="error" id="phoneError">Required</div></td>
			</tr>
			<tr>
				<th align="right">Delivery address:</th>
				<td><input type="text" name="address" id="address" size="50" maxlength="200" /></td>
				<td><div class="error" id="addressError">Required</div></td>
			</tr>
			<tr>
				<th align="right">City:</th>
				<td><input type="text" name="city" id="city" size="50" maxlength="50" /></td>
				<td><div class="error" id="cityError">Required</div></td>
			</tr>
			<tr>
				<th align="right">State:</th>
				<td><select name="state" id="state" size="1">
					<option value="AK">AK</option>
					<option value="AL">AL</option>
					<option value="AR">AR</option>
					<option value="AZ">AZ</option>
					<option value="CA">CA</option>
					<option value="CO">CO</option>
					<option value="CT">CT</option>
					<option value="DC">DC</option>
					<option value="DE">DE</option>
					<option value="FL">FL</option>
					<option value="GA">GA</option>
					<option value="HI">HI</option>
					<option value="IA">IA</option>
					<option value="ID">ID</option>
					<option value="IL">IL</option>
					<option value="IN">IN</option>
					<option value="KS">KS</option>
					<option value="KY">KY</option>
					<option value="LA">LA</option>
					<option value="MA">MA</option>
					<option value="MD">MD</option>
					<option value="ME">ME</option>
					<option value="MI">MI</option>
					<option value="MN">MN</option>
					<option value="MO">MO</option>
					<option value="MS">MS</option>
					<option value="MT">MT</option>
					<option value="NC">NC</option>
					<option value="ND">ND</option>
					<option value="NE">NE</option>
					<option value="NH">NH</option>
					<option value="NJ">NJ</option>
					<option value="NM">NM</option>
					<option value="NV">NV</option>
					<option value="NY">NY</option>
					<option value="OH">OH</option>
					<option value="OK">OK</option>
					<option value="OR">OR</option>
					<option value="PA">PA</option>
					<option value="RI">RI</option>
					<option value="SC">SC</option>
					<option value="SD">SD</option>
					<option value="TN">TN</option>
					<option value="TX">TX</option>
					<option value="UT">UT</option>
					<option value="VA">VA</option>
					<option value="VT">VT</option>
					<option value="WA">WA</option>
					<option value="WI">WI</option>
					<option value="WV">WV</option>
					<option value="WY">WY</option>
				</select>
				</td>
				<td></td>
			</tr>
			<tr>
				<th align="right">Zip:</th>
				<td><input type="text" name="zip" id="zip" size="50" maxlength="10"  /></td>
				<td><div class="error" id="zipError">Required</div></td>
			</tr>
			<th align="right">Driver's License or State ID#:</th>
				<td><input type="text" name="stateid" id="zip" size="50" maxlength="10" /></td>
				<td><div class="error" id="stateidError">Required</div></td>
			</tr>
			
			</table>
			<br><br>
			
			<input type="hidden" name="submitted" value="yes" />
			<A href="javascript:submitform()" class="button">Submit</A>
			<br/> 
		</form>

	<script type="text/javascript" language="javascript">
			var frmvalidator  = new Validator("main");
			frmvalidator.addValidation("firstname", "required", "firstnameError");
			frmvalidator.addValidation("lastname", "required", "lastnameError");
			frmvalidator.addValidation("email", "required", "emailError");
			frmvalidator.addValidation("phone", "required", "phoneError");
			frmvalidator.addValidation("address", "required", "addressError");
			frmvalidator.addValidation("city", "required", "cityError");
			frmvalidator.addValidation("zip", "required", "zipError");
			frmvalidator.addValidation("stateid", "required", "stateidError");
			
			function submitform() {
				if (document.main.onsubmit()) {
					document.main.submit();
				}
			}
		</script> 

					
					</p>
					<? }
						?>
				</div>
			</div>
		</div>
		<!-- end #content -->
<?php include 'ssi_sidebar.php'; ?>
		<div style="clear: both;">&nbsp;</div>
	</div>
	<!-- end #page --> 
</div>
<?php mysql_close($link); include 'ssi_footer.php'; ?>

[/php]

Thank you SO much in advance for your help.

Do you need a value =’’ for your imputs ?
Can you echo out your POST values ?

<td><input type="text" name="email" id="email" size="50" maxlength="100" /></td>
<td><input type="text" name="email" id="email" size="50" maxlength="100" value="" /></td>

Also you do not sanatize your varaibles being inserted in to the mysql or someone will do stupid things with your form
[php]mysql_real_escape_string($_POST[‘value’])[/php]
have you tried adding to the mysql query

[php]$result = mysql_query($query) or die(mysql_error());[/php]

I would also try it without the javascript submit and try a standard submit php does not like java.

Sponsor our Newsletter | Privacy Policy | Terms of Service