Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

ORDER_BY tanggal LIMIT 1

Pertama-tama, Anda harus menggunakan pernyataan yang sudah disiapkan seperti ini:

$note = "SELECT * 
    FROM notify 
    WHERE seeker=:seeker AND donor=:donor 
    ORDER BY `date` DESC
    LIMIT 1";

$st = $conn->prepare($note);
$st->execute(array(
    ':seeker' => $_SESSION['email'],
    ':donor' => $email,
);

Tanpa penampung tempat Anda masih terbuka untuk injeksi SQL.

Kedua, Anda tidak dapat membandingkan string dengan integer dengan cara ini:

$now = $time; // string
$old_date = strtotime($found['date']); // integer
$dateif = $now - $old_date; // dunno?

Anda harus membandingkan apel dengan apel:

$seven_days_ago = strtotime('-7 days');
$old_date = strtotime($found['date']);

if ($old_date > $seven_days_ago) {
    echo "difference between tow dates is less than 7 days";
} else {
    echo "the difference between tow dates is 7 days or more";
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara melihat indeks untuk database atau tabel di MySQL?

  2. MySQL #1140 - Pencampuran kolom GROUP

  3. Bagaimana cara menghubungkan halaman html ke database mysql?

  4. Pemformatan DateTime dalam .Net untuk database MySQL

  5. com.mysql.jdbc.exceptions.MySQLSyntaxErrorException saat menggunakan PreparedStatement