当前位置: 首页 > 知识库问答 >
问题:

使用php/phpMyAdmin在SQL中插入整数

籍光熙
2023-03-14

我试图将'$phone'存储在SQL数据库中,但是如果我在phpmyadmin中将列类型设置为'int',则不会输入任何数据。只要我将COULMN类型更改为'varchar',数据就可以被推送

<fieldset>
   <input placeholder="Your Phone Number" type="text" name="phone" value="<?= $phone ?>" tabindex="4">
   <span class="error"><?= $phone_error ?></span>
</fieldset>
$fname_error = $lname_error = $email_error = $phone_error = $job_error = $nameauth_error = $privacy_error = $decline_error = "";
$fname = $lname = $email = $phone = $message = $jobtitle = $nameauth = $success = $privacy = "";

if (empty($_POST["phone"])) {
$phone_error = "Phone is required";
  } else {
 $phone = test_input($_POST["phone"]);
 // check if e-mail address is well-formed
  if (!preg_match("/^(\d[\s-]?)?[\(\[\s-]{0,2}?\d{3}[\)\]\s-]{0,2}?\d{3} 
  [\s-]?\d{4}$/i",$phone)) {
  $phone_error = "Invalid phone number"; 
  }
 }`

if ($privacy == 'agree') {

if ($fname_error == '' and $lname_error == '' and $email_error == '' and $phone_error == '' and $privacy_error == '' and $nameauth_error == '' and $job_error == '') 
    {   
        $sql = "INSERT INTO data (phoneNo) VALUES ('$phone');";
        mysqli_query($con, $sql);
        $success = "Enjoy your game!!";
        $fname = $lname = $email = $phone = $message = $jobtitle = $nameauth = "";
    }   

} else if ($privacy == '') {
    $privacy_error = "Please Accept or Decline Our Policy";
} else if ($privacy == 'disagree') {
    $decline_error = "Please Accept Our Privacy Policy to Continue";
}   

}  

是否必须将INT值初始化为=0;?

共有1个答案

锺离鸿
2023-03-14

您必须强制转换它才能将其用作int。

$phone = (int) $phone.

此外,电话号码总是字符串,因为它们可能有“+”或以“0”开头。

 类似资料:
  • 基本上我有两个简单的表…第一个叫做“user”,它是父表。PK是索引自动递增的。第二个表称为“useradvert”。“id”字段充当索引键,它不会自动递增。每当我尝试插入数据时,它都不会进入表(useradvert)。在我的PHP页面上没有任何错误。我打开了错误报告。我设法创建了一个没有错误的关系表。我已经试着解决这个问题好几天了,并在网上搜索答案,但仍然找不到和理解这个问题。问题是由于子表中的

  • 问题内容: 我开发了一种将许多东西插入数据库的表单。但是以某种方式,当页面被填满时,它也只插入数据库管理员的user_password。我该如何解决这个问题? 问题答案: 您忘记输入关键字“ VALUES”。检查INSERT INTO的语法。 您传递给MySQL的变量(“ $ name”,“ $ password”,“ $ email”,“ $ contact”,“ $ age”,“ $ gend

  • 问题内容: 插入数据库时​​出现错误。 代码: 忽略dbquery,与mysql_query完全一样。 我收到的错误是: 不知道为什么会引发此错误! 问题答案: 教一个人如何钓鱼。 如果查询失败,那么您应该做的第一件事就是回显您要发送的查询: 通常,最终查询到底出了什么问题,这是很明显的。要特别注意查询中的动态内容,通常要注意MySQL抱怨的区域。 如果看起来还可以,那么您会寻找可能需要转义的单词

  • 问题内容: 我想使用Hibernate Native SQL在数据库中插入记录。代码如下 上面的代码工作正常,我认为这不是最好的方法。如果有的话,请给我另一种可能的方法。谢谢 问题答案: Hibernate具有批处理功能。但是在以上情况下,我使用的是Native SQL,根据我的观察,hibernate批处理对于Native SQL并不是很有效。是的,可以肯定的是它可以避免内存不足错误,但不会提高

  • 问题内容: 由于有几个版本,h2确实支持空间几何。 在Java中选择并插入几何图形不是问题。但是如何将它们插入纯sql中呢?文档显示它使用WKT。但是,当我尝试插入WKT时出现错误。 这是一个示例插入: 感谢您的提示! 问题答案: 据我所知,后缀不是WKT(知名文本),而是EWKT。 H2数据库当前不支持EWKT(扩展的知名文本)。您将不得不使用。一个完整的例子:

  • 我想在SQLite查询的每个ORDER BY子句之前插入一个COLLATE NOCASE。这就是我到目前为止所拥有的: 输出为: 从'test'顺序中选择'x','y',按'x'整理NOCASE ASC,'z'ASC限制0,10 第一个实例被匹配和替换。第二个实例不被替换(因为模式中的ORDER BY子句)。