>  Q&A  >  본문

php - SQL 문 연결 오류 보고서

1054:'where 절'의 알 수 없는 열 'a.first_letter'
但数据表是有first_letter这个字段的
[ SQL语句 ] : SELECT a.id AS vod_id, a.classid AS vod_classid, a.name AS vod_name, a.pic_url AS vod_pic_url, a.definition AS vod_definition, a.movie_type AS vod_movie_type, b.price AS vod_price, c.pay_flag AS vod_pay_flag FROM vod AS a LEFT JOIN vod_price AS b ON b.vod_id = a.id LEFT JOIN vod_pay_log AS c ON c.pay_vod_id = a.id AND c.checkin_id = ''WHERE a.status = 1 AND a.classid =1 AND a.first_letter like 'A%' ORDER BY a.sort, a.id DESC</h1> ;

天蓬老师天蓬老师2705일 전713

모든 응답(3)나는 대답할 것이다

  • PHP中文网

    PHP中文网2017-05-24 11:36:31

    일반적으로 SQL 스플라이싱을 사용하지 마세요. 이렇게 하면 공격자가 SQL을 주입할 수 있기 때문입니다. 프레임워크에서 제공하는 MODEL 레이어를 사용하거나 직접 작성하는 것이 가장 좋습니다.

    회신하다
    0
  • 巴扎黑

    巴扎黑2017-05-24 11:36:31

    알아볼 수도 있습니다. a.first_letter放到查询字段里面,记得好像5.7版本之后的sql,查询条件字段必须在select my.cnf를 수정하여 이를 방지할 수도 있습니다.

    회신하다
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-24 11:36:31

    desc vod;

    회신하다
    0
  • 취소회신하다