2012-03-30 58 views
-3

在上一页我有一个文本框。现在,用户在该文本框中输入一个数字,当用户提交表单时,它将被发布到下一页。但是我想知道的是,如何将数字插入数据库,并在文本框处于发布的下一个页面时将该代码放在上一页上?如何在数据库中插入某些东西?

换句话说,当用户在文本框中输入一个数字并提交表单时,它将用户导航到下一页,并在下一页上显示该数字,但也会将该数字插入到数据库中。

在数据库中的表的名字叫做“会话”和字段的名称是“TotalMarks”

下面是用户在一些进入上页的文本框:

<input type="text" id="txtMarks" name="textMarks" /> 

下面是其张贴到下一个页面数的PHP代码:

if (isset($_POST['textMarks'])) { 

$_SESSION['textMarks'] = $_POST['textMarks']; 

} 
+6

你完全不知道你在做什么。阅读一些PHP教程。 – maialithar 2012-03-30 11:36:41

+0

好的,所以我们知道你的HTML和PHP的外观。你的数据库呢?它是什么数据库服务器软件?你的数据库认证是否有效?你有没有试过阅读这方面的任何文档,或者你是否希望使用StackOverflow代替教程? – ghoti 2012-03-30 11:43:08

+0

我使用MYSQL phpadmin,我知道连接数据库和所有这一切,我已经做了一些代码创建查询从数据库中查找信息在PHP应用程序。我只是不知道如何在数据库中插入值:)我知道连接到数据库的代码以及所有这些。我只需要知道INSERT代码是在上一个文本框所在的页面还是下一个已经发布详细信息的页面? – user1292857 2012-03-30 11:46:06

回答

1

MySQL的代码是标准的,你只需要使用的mysql_query执行与

例如去在提交表格后(未测试):下一页:

$con = mysql_connect("localhost","databaseusername","databasepassword"); 
mysql_select_db("databasename", $con); 

$textmarks=$_POST['textMarks']; 

$sql = "insert into session (totalmarks) values ('$textmarks')"; 
mysql_query($sql,$con); 

mysql_close($con); 

我希望这有助于。

又看了教程http://www.w3schools.com/php/php_mysql_insert.asp

好运。

+0

对SQL注入不安全 – allen213 2012-07-02 15:09:24

0

的查询是:

INSERT INTO Session (TotalMarks) VALUES ('your value') 

但是,您需要首先连接到数据库。也许寻找一个简单的PHP/MySQL教程(例如:http://www.freewebmasterhelp.com/tutorials/phpmysql)。并且一定要注意Mysql Injection以及如何避免它!

+0

我知道有关连接到数据库,我只是不知道什么代码是从PHP页面插入数据到数据库:)感谢 – user1292857 2012-03-30 11:40:07

+0

在提交表单之后,最好是将此代码放入下一页中吗? – user1292857 2012-03-30 11:42:59

0

如果你正在使用MySQL作为数据库服务器,你就需要PHP,MySQL的桥

第一, 创建通过身份验证一个新的连接:

$con=mysql_connect($hostname,$user,$password); 

然后使用这个连接的资源对象选择您的数据库

mysql_select_db($databaseName,$con); 

然后对数据库执行查询

mysql_query("insert into table_name values(\"$_POST[textMarks]\")"); 
+0

我知道如何连接到数据库:)我现在想知道的是,这些代码是否需要放在w表单下面的上一页,或者在下一页显示详细信息? – user1292857 2012-03-30 11:47:53

+0

你有两种方法: 1)从表单中取值并存储会话,并使数据库条目在同一页面中。那么你重定向到下一页,并使用会话值在那里打印值 2)将表单的动作设置为下一页本身..在下一页中写入DB条目的代码,然后将不存在需要会话 – 2012-03-30 11:50:52

+0

我正在考虑这样做的第一种方法,把DB代码放在第一页,以便表单提交时,它会在数据库中发布详细信息,然后在下一页发布会话,最后一个问题,DB代码在文本框的下方或上方 – user1292857 2012-03-30 11:55:59

0

我不知道是什么数据库,但假定MySQL的,这将是这样:

if(isset($_POST['textMarks'])) { 
    if(!mysql_connect(localhost,'username','password')) { 
     die("cannot connect with the sql server"); 
    } 

    if(!mysql_select_db($database)) { 
     die("cannot connect with the database"); 
    } 

    $myVar = mysql_real_escape_string($_POST['textMarks']); // for security 
    $sqlquery = "INSERT INTO Session('TotalMarks') VALUES ('{$myVar}')"; // qry 
    mysql_query($sqlquery); // execute 
} 
+0

小的更新顺序,因为mysql_real_escape_string函数需要一个mysql服务器连接。 – ArendE 2012-03-30 11:48:10

相关问题