php中按钮怎么提交数据到数据库中?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php中按钮怎么提交数据到数据库中?相关的知识,希望对你有一定的参考价值。
参考技术A 在php表单中单选按钮
如果选中了提交后,就是这个单选按钮的值,如果没有选中,提交是空值。
比如
在提交后
如果是选中打钩的,在php
获取到的值就是
echo
$_post['a']
//输出
1
如果没有选中,在php
获取到的值就是
echo
$_post['a']
//输出
if
(empty($_post['a']))
$a=0;
else
$a=$_post['a'];
维护 php 中页面之间的会话?
【中文标题】维护 php 中页面之间的会话?【英文标题】:maintain session between the pages in php? 【发布时间】:2012-08-01 06:07:11 【问题描述】:我是 PHP 新手。
我想在页面之间传输数据。
在我的要求中,我首先有主页,因为我有 3 个字段:name、address、pin,然后是 提交按钮。
当我输入上述字段然后点击提交时,它移动到page2.php
,它有表单数据。
我已将第一个表单数据传输到第二页。现在在第二页我有一个提交按钮。当我单击该按钮时,数据将提交到 MySQL 数据库。
我的问题是,如何将首页值移动到insertdata.php
页面并提交数据?
【问题讨论】:
你尝试了什么?从这里开始:PHP: Manual 【参考方案1】:有两种方法可以做到这一点
-
会话
隐藏的输入字段
会话
要将数据从一个页面传递到另一个页面,您首先需要在所有将使用$_SESSION
超全局变量的页面上调用session_start()
。
然后您可以使用
$_SESSION['name'] = $_POST['name'];
$_SESSION['address'] = $_POST['address'];
$_SESSION['pin'] = $_POST['pin'];
要在第二页中使用这些值,只需按名称调用它们即可。例如:
$name = $_SESSION['name']; // will contain the value entered in first page
================================================ ====================================
隐藏的输入字段
这是一种比较乏味的方法,但它仍然可以完成工作。该过程涉及将需要传递到不同页面的数据存储在隐藏字段中,然后通过$_POST
或$_GET
超全局访问它们。
page1.php(发布到 page2.php)
<input type="text" value="Page 1 content" name="content" />
<input type="text" value="Page 1 body" name="body" />
page2.php(发布到 page3.php)
<input type="hidden" value="<?php echo $_POST['content']; ?>" name="content" />
<input type="hidden" value="<?php echo $_POST['body']; ?>" name="body" />
<input type="text" value="Page 2 content" name="content2" />
<input type="text" value="Page 2 body" name="body2" />
page3.php
echo $_POST['content']; // prints "Page 1 content"
echo $_POST['body']; // prints "Page 1 body"
echo $_POST['content2']; // prints "Page 2 content"
echo $_POST['body2']; // prints "Page 2 body"
【讨论】:
+1 表示隐藏的输入字段,虽然你没有解释太多。 @AlexLunix 谢谢。我没有进入隐藏字段,因为这个过程有点长,而且会话击败了隐藏字段。无论如何,我会在回家后添加解释。 “声明session_start()
”是什么意思?因为,来自 C,这意味着“创建一个名为 session_start()
的函数”,这似乎不是您的意思。
@NicHartley 也许我应该措辞更好。 “声明”是指“调用函数”。【参考方案2】:
只需在您的第一页中使用以下代码<?php session_start(); ?>
并在您的第二页中使用以下代码
<?php
$name = $_SESSION['name'];
$address = $_SESSION['address'];
$pin = $_SESSION['pin'];
echo $name."<br/>";
echo $address."<br/>";
echo $pin."<br/>";
?>
或者您可以使用post
或get
方法如下
对于 GET 方法
<?php
$name = $_GET['name'];
$address = $_GET['address'];
$pin = $_GET['pin'];
echo $name."<br/>";
echo $address."<br/>";
echo $pin."<br/>";
?>
对于 POST 方法
<?php
$name = $_POST['name'];
$address = $_POST['address'];
$pin = $_POST['pin'];
echo $name."<br/>";
echo $address."<br/>";
echo $pin."<br/>";
?>
【讨论】:
【参考方案3】:要在页面更改之间存储数据,您可以使用超全局 $_SESSION 数组。
例子
第 1 页
$_SESSION['name'] = "John";
第 2 页
echo $_SESSION['name'];
输出
John
确保将session_start()
放在需要使用会话的每个页面的顶部。
Click here for more information on Sessions.
【讨论】:
【参考方案4】:基本上,当您在第一页提交数据时,将它们保存在会话中,然后重定向到第二页。
在第二页加载它们。
第 1 页:
<?php session_start();
$_SESSION["var_name"] = $some_value;
?>
第 2 页:
<?php session_start();
$my_var = $isset($_SESSION["var_name"])?$_SESSION["var_name"]:null;
?>
您测试 my_var 的值,如果它为空,则重定向到第一页或显示错误消息。
会话教程 http://www.w3schools.com/php/php_sessions.asp
Mysql插入教程 http://www.tizag.com/mysqlTutorial/mysqlinsert.php
POST/GET 教程 http://www.tizag.com/phpT/postget.php
【讨论】:
【参考方案5】:与REQUEST
一样,PHP 维护一个会话映射,您可以在其中转储这些值并跨页面转储。
例如
$_SESSION['name']='foo';
但是你想使用会话的页面,你需要使用session_start();
方法启动会话。但是这个方法调用应该是你 php 中的第一行。
http://www.w3schools.com/php/php_sessions.asp
【讨论】:
请不要将人们推荐给 w3schools。原因见这里w3fools.com 当然。以后我会改正自己的。感谢这篇文章。 如果有人阅读第一条评论,现在引用的链接包括“今天,W3Schools 已在很大程度上解决了这些问题并解决了大多数签名开发人员的担忧。对于许多初学者来说,W3Schools 提供了结构化的教程和游乐场,提供了不错的学习体验。因此,该评论应被删除,因为它不再适用。以上是关于php中按钮怎么提交数据到数据库中?的主要内容,如果未能解决你的问题,请参考以下文章