切换风格

Wizard Sky California Sunset glow Black Cloud Beige Dragon Lavender NewYear City Snow Flowers London
收藏本站XSS平台字符串转换jsfuck
纠结的[ INSERT INTO ][复制链接]
发表于 2013-2-20 17:14:09 | 显示全部楼层 |!read_mode!
本帖最后由 豆虫 于 2013-2-20 17:18 编辑

重操php 遇到一个 INSERT INTO 的问题,望大家指教;

只有这样子,全部是数字型的才能入库,任意有一个是字符型的不能入库。


数据表字段如下: 有char



代码如下:

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>视频入库</title>
</head>
<body>
<p>视频入库</p>

<form action="rk.php" method="post">
名称: <input type="text" name="name" /><br />
类别: <input type="text" name="type" /><br />
时间: <input type="text" name="time" /><br />
图片: <input type="text" name="pic" /><br />
简介: <input type="text" name="content" /><br />
地址: <input type="text" name="playurl" /><br />
<input type="submit" />
</form>
<?php
include '../inc/conn.php';
$name=$_POST["name"];
$type=$_POST["type"];
$time=$_POST["time"];
$pic=$_POST["pic"];
$content=$_POST["content"];
$playurl=$_POST["playurl"];
$rk=mysql_query("INSERT INTO play (`id`,`name`, `type`, `time`,`pic`,`content`,`playurl`) VALUES ('',$name, $type,$time,$pic,$content,$playurl)");
if(!$rk){
echo "<br/>.入库失败";
}
else{
echo "<br/>.入库成功";
}
mysql_close($conn);
?>
</body>
</html>


conn.php代码如下:

<?php
//数据库连接
$conn = mysql_connect("localhost","root","");
if (!$conn)
{
die('无法连接到数据库: ' . mysql_error());
}
//编码转化
mysql_query("set names 'gb2312'");
//选择数据库
$conn_db=mysql_select_db('spw');
if (!$conn_db)
{
die('没有这个数据库: ' . mysql_error());
}
/*mysql_close($conn);*/
?>


曾经以为是数据库编码问题,多次测试结果如一,初学php,希望大家帮我看看,谢谢了!

用的是wampserver
附件: 你需要登录才可以下载或查看附件。没有帐号?加入Team
发表于 2013-2-20 18:02:39 | 显示全部楼层

回帖奖励 +2

字符类型的数据  insert 的时候  应该加上单引号
发表于 2013-2-20 18:05:14 | 显示全部楼层
名称: <input type="text" name="name" value="" /><br />
那几条都加上value=""试试
不行的话把数据表编码修改为gbk或utf-8
再不行把表导出来发到论坛  我本机测试下

发表于 2013-2-20 19:03:57 | 显示全部楼层
蜀山野鬼 发表于 2013-2-20 18:02
字符类型的数据  insert 的时候  应该加上单引号

是VALUES加上单引号吗?

变量什么能加上单引号呢?
发表于 2013-2-20 19:10:36 | 显示全部楼层
抚菊深思 发表于 2013-2-20 18:05
名称:
那几条都加上value=""试试
不行的话把数据表编码修改为gbk或utf-8

已测试,不能,附上sql,谢谢老大~~{:3_48:}




附件: 你需要登录才可以下载或查看附件。没有帐号?加入Team
发表于 2013-2-20 19:24:06 | 显示全部楼层
豆虫 发表于 2013-2-20 19:03
是VALUES加上单引号吗?

变量什么能加上单引号呢?

$rk=mysql_query("INSERT INTO play (id,name, type, time,pic,content,playurl) VALUES ('','$name', '$type','$time','$pic','$content','$playurl')");

这样来写试试  
发表于 2013-2-20 19:32:46 | 显示全部楼层
蜀山野鬼 发表于 2013-2-20 19:24
$rk=mysql_query("INSERT INTO play (id,name, type, time,pic,content,playurl) VALUES ('','$name', '$ ...

应该是这里的问题  刚才我没看出来:L
发表于 2013-2-20 20:00:16 | 显示全部楼层
抚菊深思 发表于 2013-2-20 19:32
应该是这里的问题  刚才我没看出来

看跑偏了吧  :lol
发表于 2013-2-20 20:58:18 | 显示全部楼层
蜀山野鬼 发表于 2013-2-20 19:24
$rk=mysql_query("INSERT INTO play (id,name, type, time,pic,content,playurl) VALUES ('','$name', '$ ...

谢谢你的提示,唉!一个单引号搞得我…………

奇怪的是在php中,如果php里如果变量加上单引的话,它就是这样子的。
$name="3g-sec.com";
echo '$name';

输出的是 $name 而非 3g-sec.com;
看来这mysql不要和php搞混了.
发表于 2013-2-26 21:42:06 | 显示全部楼层
$rk=mysql_query("INSERT INTO play (`id`,`name`, `type`, `time`,`pic`,`content`,`playurl`) VALUES ('',$name, $type,$time,$pic,$content,$playurl)");
我一看就觉得这个 怪怪的。
因为我也经常犯这个错误

代码区

GMT+8, 2019-12-7 15:08

Powered by Discuz! X2

© 2001-2018 Comsenz Inc.

回顶部