#include <StringConstants.au3> ; to declare the Constants of StringRegExp
#include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate
Local $sRegex = "(?m)matei 170 associative arrays"
Local $sString = "<!DOCTYPE html>" & @CRLF & _
"<html lang="en">" & @CRLF & _
"<head>" & @CRLF & _
" <meta charset="UTF-8">" & @CRLF & _
" <title>Community Login</title>" & @CRLF & _
"</head>" & @CRLF & _
"<body>" & @CRLF & _
"" & @CRLF & _
"<h2>Community Login</h2>" & @CRLF & _
"" & @CRLF & _
"<form method="post">" & @CRLF & _
" <label for="username">Username:</label>" & @CRLF & _
" <input type="text" name="username" id="username"><br><br>" & @CRLF & _
"" & @CRLF & _
" <label for="password">Password:</label>" & @CRLF & _
" <input type="password" name="password" id="password"><br><br>" & @CRLF & _
"" & @CRLF & _
" <button type="submit" name="login">Login</button>" & @CRLF & _
"</form>" & @CRLF & _
"" & @CRLF & _
"<?php" & @CRLF & _
"$communityUsers = [" & @CRLF & _
" "GAM" => password_hash("gamgamstyle", PASSWORD_ARGON2ID)," & @CRLF & _
" "MAO" => password_hash("gentoo", PASSWORD_ARGON2ID)," & @CRLF & _
" "MaxiObe" => password_hash("iloveallmias", PASSWORD_ARGON2ID)" & @CRLF & _
"];" & @CRLF & _
"" & @CRLF & _
"if (isset($_POST['login'])) {" & @CRLF & _
" $enteredUsername = $_POST['username'];" & @CRLF & _
" $enteredPassword = $_POST['password'];" & @CRLF & _
"" & @CRLF & _
" if (!empty($enteredUsername) && !empty($enteredPassword)) {" & @CRLF & _
" if (array_key_exists($enteredUsername, $communityUsers)) {" & @CRLF & _
" if (password_verify($enteredPassword, $communityUsers[$enteredUsername])) {" & @CRLF & _
" echo "<p style='color:green;'>Login successful! Welcome, " . htmlspecialchars($enteredUsername) . " </p>";" & @CRLF & _
" } else {" & @CRLF & _
" echo "<p style='color:red;'>Incorrect password.</p>";" & @CRLF & _
" }" & @CRLF & _
" } else {" & @CRLF & _
" echo "<p style='color:red;'>Username not found.</p>";" & @CRLF & _
" }" & @CRLF & _
" } else {" & @CRLF & _
" echo "<p style='color:red;'>Please fill in both fields!</p>";" & @CRLF & _
" }" & @CRLF & _
"}" & @CRLF & _
"?>" & @CRLF & _
"" & @CRLF & _
"</body>" & @CRLF & _
"</html>" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
""
Local $aArray = StringRegExp($sString, $sRegex, $STR_REGEXPARRAYGLOBALFULLMATCH)
Local $aFullArray[0]
For $i = 0 To UBound($aArray) -1
_ArrayConcatenate($aFullArray, $aArray[$i])
Next
$aArray = $aFullArray
; Present the entire match result
_ArrayDisplay($aArray, "Result")
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for AutoIt, please visit: https://www.autoitscript.com/autoit3/docs/functions/StringRegExp.htm