%符号需要放在您分配给参数的变量中,而不是查询中。
我不知道您使用的是MysqLi还是PDO,但是使用PDO会像这样:
$st = $db->prepare("SELECT * FROM table WHERE name LIKE ?");
$st->execute(array('%'.$test_string.'%'));
$test_string = '%' . $test_string . '%';
$st->bind_param('s', $test_string);
$st->execute();