如果变量存储在数据库表中,PHP将值设置为php变量

时间:2017-12-06 06:57:52

标签: php mysql

这是我的代码

table_query
id query
1  SELECT * FROM TABLE WHERE date = "$loc_date"



 <?php
$q1 = 'SELECT query FROM table_query WHERE 1 LIMIT 1';
$result = execute q1;
$query = $result['query'];
    $loc_date = '2017-12-06';
    $loc_query = $query; //This query fetch from table. Not directly write on file
    execute query here
    ?>

但执行查询后我没有得到任何结果。

4 个答案:

答案 0 :(得分:2)

你必须用双引号单引号写变量。

$loc_date = '2017-12-06';
$loc_query = "SELECT * FROM TABLE WHERE date = '".$loc_date."'"; 

答案 1 :(得分:1)

需要在$ loc_date字符串中添加单引号或双引号

例如

$loc_query = 'SELECT * FROM TABLE WHERE date = "'.$loc_date.'"';

OR

$ loc_query =“SELECT * FROM TABLE WHERE date ='”。$ loc_date。“'”;

答案 2 :(得分:0)

""置于where条件中。

$loc_query = 'SELECT * FROM TABLE WHERE date = "'.$loc_date.'"';

然后执行查询。它应该给你的结果。

答案 3 :(得分:0)

你可以试试这个:)

//creates database connection
$connection=mysql_connect("localhost","root","");
//selects database connection
$database_select=mysql_select_db("your_database_name",$connection);

//put the entered date to loc_date variable
$loc_date='2017-12-06';

//select * date with 2017-12-06 on table_query but would display only 1   since theres a LIMIT
$query1=mysql_query("select * from table_query WHERE date='$loc_date' LIMIT 1");
while($loc_query=mysql_fetch_array($query1)){
echo $loc_query['date']; //prints the date - 2017-12-06 if present
}

我想你想在table_query上显示'2017-12-06'的日期。但由于您希望将记录限制为1,因此在该代码上只显示2017-12-06的一(1)个日期。如果保存在该表上的超过1条记录(日期:2017-12-06),则可以删除mysql查询中的“LIMIT 1”,以便它显示全部。

相关问题