Mysqli Sipariş bağlama Tabloların + hazırlayın

0 Cevap php

Ben mysqli_stmt ile küçük bir sorun işlevi hazırlamak yaşıyorum. İşte benim sorgu:

$params = array(
    "sisi",
    "some_string",
    5000,
    "date_added DESC"
);

$sql = "SELECT *
        FROM scenes
        WHERE scene_title LIKE ?
        AND scene_id > ?
        ORDER BY ?
        LIMIT ?";

Şimdi ben böyle dizi (i örneği geçerli mysqli_stmt nesne var) için params bağladığınızda:

call_user_func_array(array($this->mysql_stmt, 'bind_param'), $params);

Tarafından sipariş binded değildir. Ben (http://ca3.php.net/manual/en/mysqli.prepare.php) php.net okumak

The markers are legal only in certain places in SQL statements. For example, they are allowed in the VALUES() list of an INSERT statement (to specify column values for a row), or in a comparison with a column in a WHERE clause to specify a comparison value.

However, they are not allowed for identifiers (such as table or column names), in the select list that names the columns to be returned by a SELECT statement, or to specify both operands of a binary operator such as the = equal sign.

Bu etrafında bir yolu var mı ya da ben ORDER BY için mysql_real_escape_char () kullanmak zorunda gidiyorum?

0 Cevap