thinkphp3.2.3的SQL
迷茫
迷茫 2017-04-11 10:15:26
[PHP讨论组]

这是我post过来的

然后增添就出现问题了,都是这个问题,两种都不行。
问题:


大神帮帮忙!

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(5)
黄舟

$name 加上单引号试试

巴扎黑

$name 是一个变量不能放在引号里面
可以这样
"CREATE DATABASE ".$name 或者 " CREATE DATABSE {$name} "

巴扎黑
$sql = "create database ".$name;
$model = new \Think\Model();
$mysql = $model->execute($sql);
大家讲道理

单引号不能解析变量的,你第二句话加个空格"CREATE DATABASE " . $name

阿神

两张图, 第一张没看出毛病, 从号多年前用 php 的记忆来看, " 里面如果有获取变量是可以直接 $VAR 但是 ' 则不行.

第二张图报 SQL 错误的原因确实是 SQL 语句错误了

$name = I('post.name');
$Model = new \Think\Model();
$mysql = $Model->execute("CREATE DATABASE".$name);

CREATE DATABASE 后面没有空格, 当字符串连接后.
CREATE DATABASEname

thinkphp 调试, 建议使用 dump(),

用 dump 打印 I 获取到的 name 以及使用.

sql 查看, 可调用 $Model->getLastSql(); // 不知道现在还有没有 或者不是这个方法名.

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号