php mysqli_query() 无法插入变量 报错未定义$_POST['name']

1.错误展示

php mysqli_query() 无法插入变量 报错未定义$_POST['name']_第1张图片
错误提示图
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200401185506438.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1FJaW5nQm8=,size_16,color_FFFFFF,t_70#pic_center

代码:

$query=mysqli_query($connection,'insert into `information` values (null,"$_POST['name']",$title,$poster_path,$music_path)');

2.排除问题

1.使用mysqli_query() 查询没有问题 ——排除数据库连接问题
2.使用第三方数据库管理软件(navicat)运行插入代码运行 ——排除自己语法写错了
**

3.错在何处

**
回到问题的根源
报错信息提示大概就是我的$_POST[‘name’] 出的错。
当因为sql语句中本身涉及了 ’ ’ (引号) 但是从表单中传过来的只是一个名字 没有引号。

**

4.纠错

错误代码:

$query=mysqli_query($connection,'insert into `information` values (null,"$_POST['name']",$title,$poster_path,$music_path)');

正确代码:

mysqli_query($connection,"insert into `information` values (null, '{$name}','{$title}','{$poster_path}','{$music_path}')");

**
**

5.解释说明

1.涉及到变量 所以应该用 “” (双引号)
2.缺少了’’ 单引号 " ’ " 这样会输出一个单引号
3.php 在设计字符串拼接的时候 变量应该用 {} 包裹起来
**
本人小白上路 如有什么地方解说错误 请前辈批改!!! 感激不尽

你可能感兴趣的:(php)