Jump to content


Photo

insert data from form to mySQL database


  • Please log in to reply
3 replies to this topic

#1 vietboy505

vietboy505
  • Members
  • PipPip
  • Member
  • 16 posts

Posted 12 March 2006 - 06:29 AM

I have run createTable.php and everything is created.
Now I want to run insertData.php. I want the user to enter stuff in the form & everything must be fill in before they click the submit button. It will call submitData() & all the information was enter will insert into the database.

How can I do that.

config.php
<?php
$errCon = "<br> Contact your webmaster. <br>";
$server = "localhost";
$user = "root";
$password = "pass";
$tableDaily="issue";
$dbnameDaily="daily_issue";

?>

 <?php
    mysql_connect($server, $user, $password)
    or die($errCon . mysql_error());

    echo "SUCCESS";
?>

createTable.php
<?php include("config.php"); ?>

<?php


mysql_query("CREATE DATABASE $dbnameDaily") or die($errCon . mysql_error());
echo "success in database creation. $dbnameDaily";

?>


 <?php

    mysql_select_db($dbnameDaily) or die($errCon . mysql_error());
// Create a MySQL table in the selected database
mysql_query("CREATE TABLE $tableDaily(
id INT NOT NULL AUTO_INCREMENT,
PRIMARY KEY(id),
owner VARCHAR(30),
problem VARCHAR(999),
status VARCHAR(1),
dateCreate DATETIME,   //YYYY-MM-DD HH:MM:SS
dateModify TIMESTAMP)")  //YYYY-MM-DD HH:MM:SS
or die($errCon . mysql_error());

echo "Table Created!";
?>

insertData.php
<?php include("config.php"); ?>

<?php

function submitData() {

mysql_select_db($dbnameDaily) or die($errCon . mysql_error());

$DATECREATE=$DATEMODIFY=date("Y-m-d H:i:s");


// Insert a row of information into the table

mysql_query("INSERT INTO $tableDaily
(owner, problem, status, dateCreate, dateModidy)

VALUES('$OWNER', '$PROBLEM','$STATUS', '$DATECREATE', '$DATEMODIFY' ) ")

or die($errCon . mysql_error());

//owner VARCHAR(30),
//problem VARCHAR(999),
//status VARCHAR(1),
//dateCreate DATETIME,   //YYYY-MM-DD HH:MM:SS
//dateModify TIMESTAMP)")  //YYYY-MM-DD HH:MM:SS

echo "Data Inserted!";

}
?>

<?php

echo('<form name="create_form" method="post">
<input type="hidden" name="require" value="OWNER,PROBLEM">
<table>
<tr>
    <td align="right">Name:</td>
    <td><input name="OWNER" size="25"></td>
</tr>

<tr>
    <td align="right">Status:</td>
    <td><select name="STATUS">
    <option value="W">Work
    <option value="I">Idle
    </select>
    </td>
</tr>

<tr>
    <td align="right">Problem:</td>
    <td><textarea name="PROBLEM" rows="10" cols="40"></textarea>
    </td>
</tr>

<tr>
    <td colspan="2" align="center"><input type="submit" value="Submit" name="create_form">
    <input type="reset" value="Reset" name="reset"></td>
</tr>

</table>
</form>');
?>


#2 fenway

fenway
  • Staff Alumni
  • MySQL Si-Fu / PHP Resident Alien
  • 16,199 posts
  • LocationToronto, ON

Posted 12 March 2006 - 07:02 AM

First, no need to post all of the scripts. Second, it looks basically correct -- what's the problem?
Seriously... if people don't start reading this before posting, I'm going to consider not answering at all.

#3 neo926

neo926
  • Members
  • PipPip
  • Member
  • 21 posts

Posted 12 March 2006 - 05:26 PM

I'm not going to pretend to know what I'm talking about, but doesn't he need:

<form name="create_form" method="post" action="<?php echo $PHP_SELF ?>">

his form tag to look like that? Otherwise the form isn't sending the data anywhere.

#4 fenway

fenway
  • Staff Alumni
  • MySQL Si-Fu / PHP Resident Alien
  • 16,199 posts
  • LocationToronto, ON

Posted 12 March 2006 - 08:01 PM

I'm fairly sure that the default action for a FORM tag is to submit back to the current page, but you're right, it should always be explicit.
Seriously... if people don't start reading this before posting, I'm going to consider not answering at all.




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users