0
strlen($_POST["link"]) > 5 ? $link = $_POST["link"] : $errormsg .= "Please enter a link for the article.<br />";
strlen($_POST["img_link"]) > 5 ? $img_link = $_POST["img_link"] : $errormsg .= "Please enter a image link for the article.<br />";
echo $errormsg;

入力が何であれ、エラーメッセージは常に空です。

4

2 に答える 2

1

これを試して:

strlen($_POST["link"]) > 5 ? ($link = $_POST["link"]) : ($errormsg .= "Please enter a link for the article.<br />");
strlen($_POST["img_link"]) > 5 ? ($img_link = $_POST["img_link"]) : ($errormsg .= "Please enter a image link for the article.<br />");
echo $errormsg;

三項演算子は、代入演算子よりも優先順位が高くなります。

于 2011-04-04T02:07:37.893 に答える
1

三項演算子を使用していますが、同時に、エラー メッセージからスパゲッティを作成しています。そのようには行きません:)

if(strlen($_POST["link"]) > 5){
    $link = $_POST["link"];
}else{
    $errors[] = "Please enter a link for the article.";
}
于 2011-04-04T02:14:43.187 に答える