用mysqli改造后,发布商品写入数据失败?

来源:2-3 商品发布之数据入库

von_colonel

2018-08-02 10:19:53

<?php
include_once './lib/fun.php';

if(!checkLogin())
{
    msg(2, '请登录', 'login.php');
}

$user = $_SESSION['user'];

//表单进行了提交处理
if(!empty($_POST['name']))
{

    $con = mysqlInit('127.0.0.1', 'root', '123456', 'imooc_mall');
    //画品名称
    $name = mysqli_real_escape_string($con,trim($_POST['name']));
    //画品价格
    $price = intval($_POST['price']);
    //画品简介
    $des = mysqli_real_escape_string($con,trim($_POST['des']));
    //画品详情
    $content = mysqli_real_escape_string($con,trim($_POST['content']));

    $nameLength = mb_strlen($name, 'utf-8');
    if($nameLength <= 0 || $nameLength > 30)
    {
        msg(2, '画品名应在1-30字符之内');
    }

    if($price <= 0 || $price > 999999999)
    {
        msg(2, '画品名称应小于999999999');
    }

    $desLength = mb_strlen($des, 'utf-8');
    if($desLength <= 0 || $desLength > 100)
    {
        msg(2, '画品简介应在1-100字符之内');
    }

    if(empty($content))
    {
        msg(2, '画品详情不能为空');
    }

    $userId = $user;

    $now = $_SERVER['REQUEST_TIME'];

    $pic = imgUpload($_FILES['file']);
    
    // 参数打印都可以成功!
    echo $name,'<br/>';
    echo $price,'<br/>';
    echo $des,'<br/>';
    echo $content,'<br/>';
    echo $pic,'<br/>';
    echo $userId,'<br/>';
    echo $now,'<br/>';

    //入库处理
    $sql = "INSERT `im_goods`(`name`,`price`,`des`,`content`,`pic`,`user_id`,`create_time`,`update_time`,`view`) VALUES ('{$name}','{$price}','{$des}','{$content}','{$pic}','{$userId}','{$now}','{$now}',0)";

    if($obj = mysqli_query($con,$sql))
    {
        msg(1,'操作成功','index.php');
        echo "成功!";
    }
    else
    {
      echo "失败!";
      echo mysql_errno();
      exit;
    }


}
?>

页面没有报错信息,一片空白!

写回答

1回答

imooc_澈

2018-08-02

你好,使用var_dump初步打印看看,先打印post数据,看数据是否传过去,再在if判断里测试一下程序是否走进了if判断里,一点点测试。

将sql语句echo出来,直接放到你的数据库管理软件运行一下看看,检测sql语句的拼接是否有问题

另外检查你的php配置文件,将报错信息打开,php.ini,修改如下:

display_errors = On

error_reporting = E_ALL | E_STRICT

这样如果代码确实报错了,那错误提示就会显示在窗口中。

如果问题依然找不到,请连同html页面以及你的数据库提交,祝学习愉快~



0

0 学习 · 2569 问题

查看课程