如何从mysql fetch结果声明一个php变量?

时间:2016-10-27 23:24:08

标签: php mysql

我知道它可能是旧的,但我需要声明一个变量,或者我认为这是。

基本上我得到了一个表名请求,我需要从列日期中获取最后一个值。我在phpMyAdmin做过。现在我需要确定精确值并将其用作php中的变量。

<?php
include 'mydb.php';
require_once 'init.php';
$user_id = $user->data()->id ;
 $data = mysql_query("SELECT date FROM request WHERE user_id=   $user_id      ORDER BY latest_request DESC LIMIT 1")  or die(mysql_error());
  $test = array();
   while($row = mysql_fetch_array( $data )) 
     {
    echo "<td>" .$row['date']. "</td>" ; 
   }

 ?>


   <?php
 $current_date = echo "<td> .$row['date']. "</td>" ;
 // result im expecing is 2016-10-17 23:53:48
// echo " $current_date" --- will be 2016-10-17 23:53:48
>?

但我得到的只是一个空值,我该怎样才能完成这个

3 个答案:

答案 0 :(得分:0)

如果你想只有一个,最后一行,那么也许更好的想法会是这样的:

  $sql = 'SELECT date FROM request WHERE user_id=   $user_id      ORDER BY     latest_request DESC LIMIT 1';
  $result = mysql_query($sql, $yourDBCon) or die(mysql_error());
  $row = mysql_fetch_assoc($result);
  print_r($row);

此解决方案只为您提供一行。

还要确保从sql statment获得任何内容。

答案 1 :(得分:0)

这是一个有效的代码(基于您说while() - 循环有效,并且您实际获得的结果为$row['date']

    <?php
    include 'mydb.php';
    require_once 'init.php';
    $user_id = $user->data()->id ;
    $data = mysql_query("SELECT date FROM request WHERE user_id = $user_id ORDER BY latest_request DESC LIMIT 1") or die(mysql_error());
       while($row = mysql_fetch_array( $data )) {
        echo $lastdate = '<td>'.$row['date'].'</td>' ; 
       }

     echo $current_date = '<td>'.$lastdate.'</td>' ;
?>

答案 2 :(得分:0)

我能够通过使用pdo insted来解决这个问题

<?php
$base_datos = DB::getInstance();
 $base_datos->query ("SELECT  req_date FROM request  wHERE user_id =     $user_id  order by req_date desc  limit 1");
 $last_date = $base_datos->results();
 $request_last_date = $last_date[0];
 $c_date =$request_last_date->req_date;

  echo "$c_date";
?>

这是从我的数据库中的表中获取值并将其声明为值