webguync Posted January 20, 2010 Share Posted January 20, 2010 Hello, I have a form which submits info into a MySQL DB (or at least it is supposed to). I get a success msg. (no DB errors or anything), but no data. Not sure if the problem is w/ my PHP code or MySQL structure, so I am posting all my code including the form code. I am pretty sure the code can be simplified also, so any help with that is greatly appreciated also. <form action ="TestSubmit.php"> <!--question1--> <label for="Question1"> <p>1. Question1</p> </label><br /><br /> <label for="Answer1">Answer 1</label><br /><br /> <textarea name="Answer1" id="Answer1" rows="15" cols="80"> </textarea> <br /><br /> <!--question2--> <label for="Question2"><p>2. Question2</p> </label><br /><br /> <label for="Answer2">Answer 2</label><br /><br /> <textarea name="Answer2" id="Answer2" rows="15" cols="80"> </textarea> <br /><br /> <!--question3--> <label for="Question3"><p>3. Question3</p> </label><br /><br /> <label for="Answer3">Answer 3</label><br /><br /> <textarea name="Answer3" id="Answer3" rows="15" cols="80"> </textarea> <br /><br /> <!--question4--> <label for="Question4"><p>Question4</p> </label><br /><br /> <label for="Answer4">Answer 4</label><br /><br /> <textarea name="Answer4" id="Answer4" rows="15" cols="80"> </textarea> <br /><br /> <!--question5--> <label for="Question5">Question5</p> </label><br /><br /> <label for="Answer5">Answer 5</label><br /><br /> <textarea name="Answer5" id="Answer5" rows="15" cols="80"> </textarea> <br /><br /> <!--question6--> <label for="Question6">Question6 </label><br /><br /> <label for="Answer6">Answer 6</label><br /><br /> <textarea name="Answer6" id="Answer6" rows="15" cols="80"> </textarea> <br /><br /> <!--question7--> <label for="Question7">Question7 </label><br /><br /> <label for="Answer7">Answer 7</label><br /><br /> <textarea name="Answer7" id="Answer7" rows="15" cols="80"> </textarea> <br /><br /> <!--question8--> <label for="Question8">Question8 </label><br /><br /> <label for="Answer8">Answer 8</label><br /><br /> <textarea name="Answer8" id="Answer8" rows="15" cols="80"> </textarea> <br /><br /> <!--question9--> <label for="Question9">Question9 </label><br /><br /> <label for="Answer9">Answer 9</label><br /><br /> <textarea name="Answer9" id="Answer9" rows="15" cols="80"> </textarea><br /><br /> <input type="submit" value="submit" name="submit" /><br /><br /> <input type="reset" value="reset" name="reset" /><br /><br /> </form> <?php $con = mysql_connect("localhost","uname","pw") or die('Could not connect: ' . mysql_error()); mysql_select_db("DBName") or die(mysql_error()); $name=mysql_real_escape_string($_POST['name']); //This value has to be the same as in the HTML form file $A1=mysql_real_escape_string($_POST['Answer1']); //This value has to be the same as in the HTML form file $A2=mysql_real_escape_string($_POST['Answer2']); //This value has to be the same as in the HTML form file $A3=mysql_real_escape_string($_POST['Answer3']); //This value has to be the same as in the HTML form file $A4=mysql_real_escape_string($_POST['Answer4']); //This value has to be the same as in the HTML form file $A5=mysql_real_escape_string($_POST['Answer5']); //This value has to be the same as in the HTML form file $A6=mysql_real_escape_string($_POST['Answer6']); //This value has to be the same as in the HTML form file $A7=mysql_real_escape_string($_POST['Answer7']); //This value has to be the same as in the HTML form file $A8=mysql_real_escape_string($_POST['Answer8']); //This value has to be the same as in the HTML form file $A9=mysql_real_escape_string($_POST['Answer9']); //This value has to be the same as in the HTML form file $sql="INSERT INTO TableName (name,Answer1,Answer2,Answer3,Answer4,Answer5,Answer6,Answer7,Answer8,Answer9) VALUES ('$name','$A1','$A2','$A3','$A4','$A5','$A6','$A7','$A8','$A9')"; /*form_data is the name of the MySQL table where the form data will be saved. name and email are the respective table fields*/ if (!mysql_query($sql,$con)) { die('Error: ' . mysql_error()); } echo "Your information has been submitted successfully."; mysql_close($con); ?> CREATE TABLE `TableName` ( `responses_id` smallint(6) NOT NULL auto_increment, `name` varchar(255) NOT NULL default '', `Answer1` text NOT NULL, `Answer2` text NOT NULL, `Answer3` text NOT NULL, `Answer4` text NOT NULL, `Answer5` text NOT NULL, `Answer6` text NOT NULL, `Answer7` text NOT NULL, `Answer8` text NOT NULL, `Answer9` text NOT NULL, PRIMARY KEY (`responses_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ; Link to comment https://forums.phpfreaks.com/topic/189229-information-from-form-not-reaching-database/ Share on other sites More sharing options...
schilly Posted January 20, 2010 Share Posted January 20, 2010 Best thing to do is echo your $sql variable and make sure it looks right. I'm guessing all the values are null because you don't have a method set in your form but not sure if it assumes a default if you don't define it. ie. <form action="TestSubmit.php" method="post"> Link to comment https://forums.phpfreaks.com/topic/189229-information-from-form-not-reaching-database/#findComment-999031 Share on other sites More sharing options...
webguync Posted January 21, 2010 Author Share Posted January 21, 2010 duh, that worked. Thanks! Link to comment https://forums.phpfreaks.com/topic/189229-information-from-form-not-reaching-database/#findComment-999361 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.