【问题标题】:Mysql stores a number instead of the value setMysql存储一个数字而不是值集
【发布时间】:2015-11-21 21:55:13
【问题描述】:

我在 mysql 存储数字值而不是我在表单中设置的值时遇到问题。

我在网上找不到我的问题或解决方案。

正在发生的事情的代码摘要。

HTML 表单代码:

<td><input type="checkbox" name="load_ericsson" value="Ericsson"> Ericsson</td> 

Connect.php 代码:

$load_ericsson = isset($_POST['load_ericsson']);

$sql = "INSERT INTO load_ericsson (contract) VALUES ('$load_ericsson')";
if (!mysql_query($sql)) {
die('Error: ' . mysql_error());
}

phpmyadmin 中的结果: 它应该将“Ericsson”作为条目中的一个值(因为这是 html 表单中的值)。

相反,load_ericsson 表中的合同列的值为“1”

【问题讨论】:

  • 请问有人吗?我很挂断这个。我不能让它工作!我阅读了所有论坛,观看了所有 youtube 视频并查看了我的书。要么我使用我所拥有的并获得 1 的值,要么我使用 Kostas 代码,当它未选中时,我得到和未定义的变量错误。请帮忙!!!

标签: mysql numbers datastore


【解决方案1】:

isset($_POST['load_ericsson']) 的值将是truefalse。此外,最好使用 PDO 和准备好的语句来避免 SQL 注入,因为 mysql_* 函数已被弃用。

你需要这个:

if (isset($_POST['load_ericsson'])) {
    $load_ericsson = $_POST['load_ericsson'];
    //query with validation, sanitization, prepared statement here
}

【讨论】:

  • 哇,我还在编辑我的问题,我已经得到了答案。没有你们,我们会在哪里?谢谢,让我检查一下然后回到这里......
  • 哎哟!我忘记了我这样编码的原因。现在,当我未选中复选框并提交表单时,我得到: 注意:未定义的变量:C:\xampp\htdocs\heijunka\files\connect1.php 中的 load_ericsson 在第 147 行
  • 请问有人吗?我很挂断这个。我不能让它工作!我阅读了所有论坛,观看了所有 youtube 视频并查看了我的书。要么我使用我所拥有的并获得 1 的值,要么我使用 Kostas 代码,当它未选中时,我得到和未定义的变量错误。请帮忙!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!
猜你喜欢
  • 2018-07-20
  • 1970-01-01
  • 2017-01-01
  • 2016-12-21
  • 1970-01-01
  • 2020-02-23
  • 2022-12-01
  • 1970-01-01
  • 2017-11-23
相关资源
最近更新 更多