网页中PHP代码向sqlite数据库写数据时,“000...0”这样的字符串会被存储为0,求解原因?-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

网页中PHP代码向sqlite数据库写数据时,“000...0”这样的字符串会被存储为0,求解原因?

a123456678 2016-07-19 14:33:56 2084

如题,我用PHP向sqlite的一个表中写数据,包含用户名和密码两个字段,但是当字段值(用户名或密码)是类似“000...0”这样的值时,数据库中保存的字段值就只剩下一位0了。
PHP代码如下
<?php
$name=$_POST["username"];
$password=$_POST['password'];
echo gettype($password); //这句用来测试password是何种数据类型,经验证是string,可既然是字符串为何会遗失数据呢?
class MyDB extends SQLite3
{

function __construct()
{
    $this->open('survey.db');
}

}
$db = new MyDB();
if(!$db){

echo $db->lastErrorMsg();

} else {

echo "Opened database successfully\n";

}
$sql =<<

  INSERT INTO login (username,password)
  VALUES ($name,$password);

EOF;
$ret = $db->exec($sql);
if(!$ret){

echo $db->lastErrorMsg();

} else {

echo "Records created successfully

";
}
$db->close();
?>

SQL 存储 PHP 数据库 数据安全/隐私保护 数据库管理
分享到
取消 提交回答
全部回答(1)
  • a123456678
    2019-07-17 19:58:23

    screenshot


    网页中PHP代码向sqlite数据库写数据时,“000...0”这样的字符串会被存储为0,
    screenshot

    0 0
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

推荐文章
相似问题