0
这preg_match()
用法有什么问题?我想检查蒸汽大厅的链接,如果它匹配,然后写入数据库。如果没有,只是回显错误。我通过ajax来做这件事。用ajax或$_SERVER["REQUEST_METHOD"] == "POST"
做这个更好吗?PHP preg_match()蒸汽链接验证错误
<?php
require("../includes/config.php");
$lobby = "steam://joinlobby/730/109775243427128868/76561198254260308";
if (!preg_match("%^((steam?:)+(/joinlobby\/730\/)+([0-9]{17,25}\/.?)+([0-9]{17,25})/$)%i", $lobby)) {
echo "Lobby link isn't formatted correctly.";
}
else {
$rank = "Golden";
$mic = "No";
try {
$stmt=$db->prepare("INSERT INTO created_lobby (lobby_link, current_rank, have_mic) VALUES (:lobby_link, '$rank', '$mic')");
$stmt->execute(array(
':input_link' => $_POST['lobbyLink']
));
}
catch(PDOException $e) {
echo "Error: " . $e->getMessage();
}
}
?>
我的问题: 当我执行这个代码,它将给我假的。
谢谢你的帮助。
至于这个代码无法正常工作? –
对不起,我忘了补充一点。现在在说明 –
如果您使用'%'作为正则表达式分隔符,则不需要转义'/'。 – Barmar