php mysql选择所有匹配的行,并回显另一个表行

hlswsv35  于 2021-06-17  发布在  Mysql
关注(0)|答案(2)|浏览(302)

我有两张table的留言和答案。其中message id=应答id。我要选择using message。当message=hi时,应回答hello,hey。

Message Table:
|  id  |  message |
|   1  |    hi    |
|   2  |    hi    |
|   3  |    Hi    |

答案表:

| id | answer |
| 1  | hello  |
| 2  | hey    |
| 3  | Hello  |

我已经试过了:$inp=“嗨”;

SELECT * FROM message JOIN answer ON message.message = answer.answer WHERE message='$inp'"

有什么建议吗?

ecfsfe2w

ecfsfe2w1#

请尝试以下代码:

"SELECT * FROM message JOIN answer ON message.id= answer.id WHERE message.message='".$inp."'";
gab6jxml

gab6jxml2#

在案例id中使用公共b/w每个表,因此查询应该是。。 SELECT * FROM message JOIN answer ON answer.id = message.id WHERE message = 'hi'; rest在php中,您应该使用不同的方式来运行查询,比如预处理语句,以避免sql注入或连接变量
就像 'SELECT * FROM message JOIN answer ON answer.id = message.id WHERE message = "'.$input.'"'; 或mysqli\u prepare()bind\u params()
或者学习使用pdo,这有助于避免sql注入,并支持多个db驱动程序,使您的工作更具动态性和灵活性。

相关问题