作者jamesemaj (小欧肥不肥)
看板Web_Design
标题[问题] MySQL语法问题
时间Tue Dec 16 16:54:53 2014
我想做一个语法
类似选取月份後
她可以echo出在这选取的月份之间的DATA
但是一直都跑不出值
後来我逐行debug
发现了在某一条
$Recordset1 = mysql_query($sql_query);
这条没有值跑出来
我再想应该是我SQL语法写错
以下是我body的程式码
<body>
<form id="form1" name="form1" method="post" action="test_2.php">
<label for="m1"></label>
月份</p>
<input name="m1" type="text" id="m1" value="1" />
<p>到</p>
<input name="m2" type="text" id="m2" value="5" />
<p>
<input type="submit" name="submit" id="submit" value="送出" />
</p>
</form>
<form id="form2" name="form2" method="post" action="">
<p>
<?PHP
$timea = $_POST['m1'];
$timeb = $_POST['m2'];
$sql_query = "SELECT * FROM `userdata_3` WHERE `month1` BETWEEN ".$timea."
AND ".$timeb."";
//下面这行没值
$Recordset1 = mysql_query($sql_query);
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
echo $row_Recordset1['username'];
?>
</form>
</body>
麻烦各位提点了 谢谢!
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 111.184.237.148
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/Web_Design/M.1418720097.A.814.html
1F:→ bibo9901: 1. echo $sql_query 看是否正确 12/16 17:05
2F:→ bibo9901: 2. echo mysql_error() 看是否有错 12/16 17:05
3F:→ bibo9901: 3. 确定用 mysql_num_rows() 确定有捞到资料 12/16 17:06
4F:→ bibo9901: 做完这些事才能称作「逐行debug」 12/16 17:07
5F:→ jamesemaj: 我是用 echo $sql_query 与 exit();看哪行有问题的 12/16 17:09
6F:→ jamesemaj: 我用mysql_num_rows()捞不到资料 12/16 17:12
7F:→ jamesemaj: echo mysql_error();没有error 输出 12/16 17:13
8F:推 pm2001: 直接进sql跑你那行query看错误 12/16 17:21
我把那段
"SELECT * FROM `userdata_3` WHERE `month1` BETWEEN ".$timea." AND ".$timeb.""
改成
"SELECT * FROM `userdata_3` WHERE `month1` BETWEEN 1 AND 5"
读的出值
但我看不出我的变数错在哪里
因为我分别echo变数都有值出现
※ 编辑: jamesemaj (111.184.237.148), 12/16/2014 17:32:41
9F:推 tw0517tw: sql语法最後有没有;有差吗? 12/16 18:09
10F:推 jhunkyoiori: 小心SQL Injection 12/16 18:41
11F:推 crossdunk: echo $sql_query试试看 12/16 18:48
12F:→ jamesemaj: 感谢板友提醒 真的是injection的问题!!解决了!感到温暖 12/16 23:21