ユーザーのパスワードを変更するための MYSQL クエリを作成していました。
コードの一部は次のとおりです。
if ($newpass == $newpass2 && strlen($newpass) < 21 && strlen($newpass) > 5) {
$sqlPasswordQuery = "SELECT value FROM radcheck WHERE attribute = "Cleartext-Password" AND value = "{$oldpass}" AND username = "{$userid}"";
$oldPasswordResult = mysql_query($sqlPasswordQuery);
中央の行はエラーの位置です (行 56):
Parse error: syntax error, unexpected T_STRING in /(directory)/changepass.php on line 56
使用されるテーブルには、複数の種類のプロパティが格納されます。行の属性 = "Cleartext-Password" の場合のみ、それはパスワード行です。
テーブルは freeradius によって生成され、承認に使用されるため、その構造を変更することはできません。
コードをさまざまな種類のスタイルに変更しました。たとえば、次のようになります。
$sqlPasswordQuery = SELECT value FROM `radcheck` WHERE `attribute` = "Cleartext-Password" AND `value` = "{$oldpass}" AND `username` = "{$userid}"
しかし、PHP はまだそれを好まない。
誰か手を貸してくれませんか?どうもありがとう。