質問編集履歴
2
試したことを追求しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -38,6 +38,12 @@
|
|
38
38
|
$msg = '半角英数字と_(アンダースコア)のみ。7文字以上14文字以内。';
|
39
39
|
$link = '<a href="signup.php">戻る</a>';
|
40
40
|
}else {
|
41
|
+
$sql = "INSERT INTO users(name, mail, pass) VALUES (:name, :mail, :pass)";
|
42
|
+
$stmt = $dbh->prepare( $sql );
|
43
|
+
$stmt->bindValue( ':name', $name );
|
44
|
+
$stmt->bindValue( ':mail', $mail );
|
45
|
+
$stmt->bindValue( ':pass', $pass );
|
46
|
+
$stmt->execute();
|
41
47
|
$msg = '会員登録が完了しました';
|
42
48
|
$link = '<a href="login.php">ログインページ</a>';
|
43
49
|
}
|
1
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
### 前提・実現したいこと
|
2
2
|
|
3
3
|
PHPのパスワードで「半角英数字と_(アンダースコア)のみ、7文字以上14文字以内」の正規表現を作成したいです。
|
4
|
+
半角英数字と_で13文字のでパスワードを作り入力しても「会員登録が完了しました」と表示されません。
|
4
5
|
|
5
6
|
|
6
7
|
### 該当のソースコード
|
@@ -45,8 +46,13 @@
|
|
45
46
|
<!--メッセージの出力-->
|
46
47
|
<?php echo $link; ?>
|
47
48
|
```
|
49
|
+
### 試したこと
|
50
|
+
[http://okumocchi.jp/php/re.php](url)
|
51
|
+
上記URLの正規表現チェッカーを使い、
|
52
|
+
正規表現:/^[a-z0-9_]{7,14}$/i
|
53
|
+
文字列:gh0_eg8npw75v
|
54
|
+
をチェックすると「一致しました。」と出ました。
|
48
55
|
|
49
|
-
例えばパスワードに「gh0_eg8npw75v」(13文字)を入力すると「半角英数字と_(アンダースコア)のみ。7文字以上14文字以内。」が表示されてしまいます。
|
50
56
|
!preg_match()の書き方が間違えているのでしょうか?
|
51
57
|
よろしくお願いします。
|
52
58
|
|