首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基本PHP MYSQL表单未提交

问基本PHP MYSQL表单未提交
EN

Stack Overflow用户
提问于 2014-04-07 02:33:40
回答 4查看 47关注 0票数 0

我是一个php初学者。尝试将一些数据提交到MYSQL数据库。

当我提交表单时,将在表中创建一行,但只包含AUTOINT列,而不包含我的数据。有什么帮助吗?

index.php:

代码语言:javascript
复制
<form method="post" action="form.php">

    <input id="name" name="name"  value="Stuffff">
    <input id="limite" name="limite"  value="100.00">
    <input type="submit" name="submit" value="Add!">

</form>

form.php:

代码语言:javascript
复制
<?
mysql_connect("localhost","root","root")
mysql_select_db("means");

$order = "INSERT INTO categories (name, limite ) VALUES ( '$name', '$limite' )";

$result = mysql_query($order);
if($result){
    echo("<br>Input data is succeed");
} else{
echo("<br>Input data is fail");
}
?>
EN

回答 4

Stack Overflow用户

发布于 2014-04-07 02:42:10

您的教程或书籍似乎非常过时,并且依赖于REGISTER_GLOBALS=on的配置。这个特性在PHP5.4中被删除了,参见http://www.php.net/manual/en/security.globals.php。

请使用mysql的现代API,如PDO或mysqli,而不是旧的mysql_,并清理您的数据库输入,即使用准备好的语句。

票数 1
EN

Stack Overflow用户

发布于 2014-04-07 02:35:56

您的代码依赖于register_globals是否可用(意味着您使用的是过时的PHP)并将其打开。

从$_POST['name']和$_POST['limite']获取您发布的数据。

它还取决于short open tags是否打开,而这并不是多年来的默认设置。

使用<?php,而不是<?。

票数 0
EN

Stack Overflow用户

发布于 2014-04-07 02:36:01

您必须修改代码,如下所示

代码语言:javascript
复制
$order = "INSERT INTO categories (name, limite ) VALUES ( $_POST['name'], $_POST['limite'] )";

这是因为您要发布数据,所以必须从$_POST php内置变量中检索数据

此外,请记住mysql_*函数已弃用

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22898183

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档