dtrhd2850 2014-03-12 12:38 采纳率: 0%
浏览 212
已采纳

MySql Unknown列在哪里

I am a beginner and try to have a very simple messaging system. every thing is managed via the ID's of the users..

So if someone types the username of a person i have to convert it into the person's id:

$res_name = $_POST["res_name"];
    $res_id = userToId($res_name);

This function looks like this:

function userToId($username) {
    $data = array();
    $func_get_args = func_get_args();

    if($func_num_args = 1)
    {
    $res = mysql_query("SELECT id FROM `z_network_users` WHERE `username` = `$username`") or die(mysql_error());
    $data = mysql_fetch_assoc($res);
    }
    return $data['id'];
}

it doesn't work, in fact it can't find a username even if it's existing..

the error is for example:

Unknown column 'testperson' in 'where clause'

the user exists, hope you can help me :) ps: I know I shouldn't use mysql_* but i haven' learned the better version.. ;)

  • 写回答

7条回答 默认 最新

  • doushaiyu5065 2014-03-12 12:44
    关注

    When using backticks around your variable then it will be considered as column

    thats why you got that error Unknown column 'testperson' in 'where clause'

    you should use this (you should escape your variable to prevent sql injection)

     $username = mysql_real_escape_string($username);
     $res = mysql_query("SELECT id FROM `z_network_users` 
            WHERE `username` = '$username' ") or die(mysql_error());
    

    or this

     $username = mysql_real_escape_string($username);
     $res = mysql_query("SELECT id FROM `z_network_users` 
            WHERE `username` = '".$username."' ") or die(mysql_error());
    

    try that function:

     function userToId($username) {
    
       $func_get_args = func_get_args();
        $username = mysql_real_escape_string($username);
       if($func_num_args == 1)
    {
       $res = mysql_query("SELECT id FROM `z_network_users` WHERE `username` = '$username' ") or die(mysql_error());
       $row = mysql_fetch_assoc($res);
    
    }
      return $row['id'];
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(6条)

报告相同问题?

悬赏问题

  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥15 stable diffusion
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误