【问题标题】:how to send fixed values to a database from PHP如何从 PHP 将固定值发送到数据库
【发布时间】:2014-05-12 20:25:20
【问题描述】:

我正在尝试创建一个简单的订单系统,用户可以在其中输入基本联系信息,为此我想添加一个固定值,在这种情况下,该值将始终发送到数据库中,即产品的价格。我还希望将下订单的日期也发送到数据库。我已经用一个简单的输入表单解决了用户输入部分,但不知道在这种情况下如何获得价格或 pris 的固定值以及我提交的表单始终与用户联系人一起发送到数据库的日期信息。 我现在的代码如下所示:

    <?php /*Detta är kod för Order*/ include('input.php');?>
<?php if(!empty($_POST)){

  //Contact
  $mail         = $_POST['mail'];
  $first_name   = $_POST['fname'];
  $last_name    = $_POST['lname'];
  $adress       = $_POST['adress'];
  $phone        = $_POST['phone'];

  //Zip code
  $zip           = $_POST['zip'];
  $city          = $_POST['city'];

  //Orders
  $type          = $_POST['type'];
  $price         = $_POST['price'];
  $many          = $_POST['many'];
  $date          = $_POST['date'];
  $img           = $_POST['img'];
  $paymentstatus = $_POST['paymentstatus'];


  $sqlContact = "INSERT INTO Contact (Mail, FName, LName, Adress, Phone) Values('$mail', '$first_name', '$last_name', '$adress', '$phone');";

  $sqlZipCode  = "INSERT INTO ZipCode (Zip, City) Values('$zip', '$city')";

  $sqlOrders  = "INSERT INTO Orders (Type, Price, Many, Date, IMG, Paymentstatus) Values('$typ','$pris','$antal','$datum','$img', '$betaldstatus')";

  $resultKontakt = mysql_query($sqlKontakt) or die(mysql_error() . mysql_errno());

  $resultPostNr  = mysql_query($sqlPostNr) or die(mysql_error() . mysql_errno());

  $resultOrders  = mysql_query($sqlOrders) or die(mysql_error() . mysql_errno());
} 

https://www.dropbox.com/s/x8c53o2865hln58/Input.php https://www.dropbox.com/s/5yyq33uux0tqd2h/Order.php

如何解决,以便我得到一个固定值“49”的价格,也让用户可以输入当前日期,但我不希望这对用户可见,也不在 HTML 中-form 作为价格信息在网站上说明,日期是提交订单的时间,但它必须作为一个属性,因为我还需要在管理页面上显示数据“提交的订单”。

【问题讨论】:

  • 将代码粘贴到您的问题中,不要太大块。
  • 我想只用 PHP 就足够了。
  • 固定值没有小数点??什么是固定的意思??
  • srry 通过固定值我指的是数字 49,我想与所有用户输入一起发送但在后台。我希望将数字 49 存储在“订单”表的“Pris”属性中。
  • 搜索/替换这些 var 名称对您来说没有任何文学成本。读代码的人解析奇怪的词要花很多钱……

标签: php html mysql database forms


【解决方案1】:

首先:永远不要在论坛中显示您的数据库密码!

对于你的日期问题:使用 mysql 的 DB-date now() 这样你就可以得到一个可靠的日期:

$sqlOrders  = "INSERT INTO Orders (Typ, Pris, Antal, Datum, IMG, BetaldStatus) Values('$typ','$pris','$antal',now(),'$img', '$betaldstatus')";

到你的价格:(我仍然不清楚你到底想要什么。

$pris         = 49;

【讨论】:

  • 感谢您对密码的回答,哎呀,这是一个学校项目,所以它不会上线。但无论如何,关于 $pris,因为现在编写了代码,值 49 在 HTML 表单中设置并且对用户可见,我想做的是:Sudocode $pris = $_POST['49'];。换句话说,我希望将值 49 与用户放入表单的数据一起发布到数据库中。因此,在发送到数据库的每个帖子上,它都会在属性 Pris 下显示 49。可能是世界上最容易解决的事情,但我不知道该怎么做。 ://
  • 关于 DB-date now() 所以我没有必要用 PHP 捕捉日期,因为我所能做的就是在数据库本身中使用 Now() 并添加一个存储过程或将日期添加到 Date 属性的东西?或者除了让用户在 HTML 表单中输入日期之外,还有其他方法可以使用 PHP 吗?
  • 这是您的服务器的日期。所以用户没有输入。 (我认为您的 pris 也是如此。只需去掉两个字段:$_POST['date'] 和 $_POST['pris'])。
  • 顺便说一下 now() 返回日期时间格式,因此请确保您的数据库字段具有日期时间类型。
【解决方案2】:

您已禁用文本字段“pris”,但仍有人可以使用代理工具编辑“$pirs”变量并更改价格,因此我建议根据用户选择的产品获取价格并插入表,不要使用表单接收价格(使用后变量)。

【讨论】:

  • 谢谢你的回答,对不起,我不得不问你如何在代码中做到这一点?这就是我的不足之处。每个提交的订单如何收到 49 的价格?另外我可能想补充一点,安全不是问题,因为这不会上线。这是一个我有点坚持的学校项目。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-07
相关资源
最近更新 更多