用户可以将聊天室命名为他们喜欢的任何名称,并且这个名称将在准备好的语句中传递给MySQL数据库,作为相应聊天室的表名。由于MySQL内部的工作方式(),将这些信息以原样传递到数据库中将字符转换为问号:
Identifiers are converted to Unicode internally. [..]在这种情况下,是否存在“转义”/“消毒”用户输入的最佳实践?我将相应的单词放入引号中,因为我知道这不是处理数据库中用户输入的正确/典型的方法。然而,基于这个答案,我的印象是这不是一个很好的实践