-1

私がテストしているユーザーの場合、org_id 列の値は「student_life」です。

この関数に、student_life 列 = 1 の行が表示されるようにしようとしています。

構文エラーがあると確信していますが、それを理解できません。

function org_id_users_table() 
{
$org_id = mysql_real_escape_string($_POST["org_id"]);

$sql = $this->query("SELECT * FROM ".DBTBLE." WHERE '$org_id' = '1'");
$result = $sql['sql'];
$num_rows = $sql['num_rows'];
$this->create_table($result, $num_rows);
}

(「$sql=...」行の $org_id を student_life に置き換えると、コードが機能します。

4

3 に答える 3

1

列名を引用しているため、MySQL はそれを文字列と見なします。

$sql = $this->query("SELECT * FROM ".DBTBLE." WHERE $org_id = '1'");

編集:

あなたのコメントに基づいて、あなたが実際に望んでいるのはこれだと思います:

$sql = $this->query("SELECT * FROM ".DBTBLE." WHERE org_id = '$org_id'");
于 2013-04-19T00:51:36.923 に答える
0

引用符を変更します。

$sql = $this->query("SELECT * FROM ".DBTBLE." WHERE `$org_id` = '1'");

PS PHP で mysql_* 関数を使用してはいけないのはなぜですか?

于 2013-04-19T00:51:36.230 に答える