Add class in HTML with PHP
I have a form with email and password validation. When password is wrong the box password has to be red to show that something go wrong, i do that adding a "vermei"
class.
I have to do this in PHP, already attempted:
$dom=new DOMDocument;
$dom->loadHTML($html);
$input=$dom->getElementById('password');
foreach($input as $pd){
$pd->setAttribute('class', $pd->getAttribute('class').' vermei');
}
$html = $dom->saveHTML(); // return 'variable $html not found'
and
echo '<script>
alert("Password Incorrect!");
history.go(-1); //work until this part, the code below do not run.
//I did this go back cuz when form is submitted, go to config.php, and
// this code back to sign in page
var password = document.getElementById("password");
document.getElementById("password").focus();
password.classList.add("vermei");
</script>';
Someone can help me with adding a "vermei"
class in Password input?
Solution 1:
Your first code doesn't work because $input
is a single element, not a list, so you can't loop over it. Replace the loop with just:
$input->setAttribute("class", $input->getAttribute("class") . " vermei");
Normally you would do this in the code that outputs the form, e.g.
<form>
...
Password: <input id="password" type="password" name="password" <?php if ($password_incorrect) echo 'class="vermei"'; ?>>
...
</form>