svnno****@sourc*****
svnno****@sourc*****
2011年 5月 17日 (火) 17:56:22 JST
Revision: 48 http://sourceforge.jp/projects/smartupload/svn/view?view=rev&revision=48 Author: hryksbt Date: 2011-05-17 17:56:22 +0900 (Tue, 17 May 2011) Log Message: ----------- user_form.php - 国名自動補完追加 user_add.php - 入力チェック実装中 Modified Paths: -------------- trunk/SmartUpload/user_add.php trunk/SmartUpload/user_form.php -------------- next part -------------- Modified: trunk/SmartUpload/user_add.php =================================================================== --- trunk/SmartUpload/user_add.php 2011-05-17 08:25:17 UTC (rev 47) +++ trunk/SmartUpload/user_add.php 2011-05-17 08:56:22 UTC (rev 48) @@ -6,7 +6,7 @@ * Rev 1.0 * */ - session_start(); +session_start(); ?> <html> <head> @@ -14,6 +14,7 @@ <title>SmartUpload</title> </head> <body> + <?php // メイン処理 // @@ -22,7 +23,7 @@ try{ - // 文字チェック関数 + // 文字チェック関数 function check_string($value) { if(preg_match("/[a-zA-Z0-9\.#_-]/", $value)) { @@ -30,10 +31,9 @@ return(TRUE); } - } - // 文字数チェック関数 + // 文字数チェック関数 function count_string($str) { if (strlen($str) <= 32) { @@ -41,109 +41,135 @@ return (TRUE); } - } // メイン処理 // - if ($_SESSION["id"]) { print("すでにログインしています<br>"); ?> - <input type="button" value="戻る" onClick="history.back()"> + <input type="button" value="戻る" onClick="history.back()"> <?php + + } else { + + $error = 0; + // id(アカウント)の入力文字チェック - } elseif (!check_string($_POST["id"])) { + if (!check_string($_POST["id"])) { - print('Error: '); - print("ID(アカウント)に不正な文字が含まれています。<br>"); - print("※ ID(アカウント)には、半角英数字と、「-」ハイフン、「_」アンダースコアが利用できます。"); - require_once ("user_form.php"); + print('Error: '); + print("ID(アカウント)に不正な文字が含まれています。<br>"); + print("※ ID(アカウント)には、半角英数字と、「-」ハイフン、「_」アンダースコアが利用できます。<br>"); + $error =1; + + } + // id(アカウント)の文字数チェック - } elseif (!count_string($_POST["id"])) { + if (!count_string($_POST["id"])) { - print('Error: '); - print("ID(アカウント)の文字数オーバーです。<br>"); - print("※ ID(アカウント)は、半角32文字以内です。"); - require_once ("user_form.php"); + print('Error: '); + print("ID(アカウント)の文字数オーバーです。<br>"); + print("※ ID(アカウント)は、半角32文字以内です。<br>"); + $error =1; + + } + // パスワードの入力文字チェック - } elseif (!check_string($_POST["pass"])) { + if (!check_string($_POST["pass"])) { - print('Error: '); - print("パスワードに不正な文字が含まれています。<br>"); - print("※ パスワードには、半角英数字と、「-」ハイフン、「_」アンダースコアが利用できます。"); - require_once ("user_form.php"); + print('Error: '); + print("パスワードに不正な文字が含まれています。<br>"); + print("※ パスワードには、半角英数字と、「-」ハイフン、「_」アンダースコアが利用できます。<br>"); + $error =1; + + } + // パスワードの文字数チェック - } elseif (!count_string($_POST["pass"])) { + if (!count_string($_POST["pass"])) { - print('Error: '); - print("パスワードの文字数オーバーです。<br>"); - print("※ パスワードは、半角32文字以内です。"); - require_once ("user_form.php"); + print('Error: '); + print("パスワードの文字数オーバーです。<br>"); + print("※ パスワードは、半角32文字以内です。<br>"); + $error =1; + + } + // 氏名の文字数チェック - } elseif (strlen($_POST["name"]) > 64) { - print('Error: '); - print("氏名の文字数オーバーです。<br>"); - print("※ 氏名は、全角32文字以内(半角64文字以内です。"); - require_once ("user_form.php"); + if (strlen($_POST["name"]) > 64) { - // メールアドレスチェック - } elseif (!preg_match( + print('Error: '); + print("氏名の文字数オーバーです。<br>"); + print("※ 氏名は、全角32文字以内(半角64文字以内です。<br>"); - "/^([a-zA-Z0-9])+([a-zA-Z0-9\._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9\._-]+)+$/", $_POST["mail"] + $error =1; - )) { + // メールアドレスチェック + if (!preg_match( - print('Error: '); - print ("メールアドレスが不正です。"); - require_once ("user_form.php"); + "/^([a-zA-Z0-9])+([a-zA-Z0-9\._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9\._-]+)+$/", $_POST["mail"] - } else { + )) { + print('Error: '); + print ("メールアドレスが不正です。<br>"); + + $error =1; + + } + } + + if ($error = 1) { + + require_once ("user_form.php"); + + } else { ?> - <p> - <b>登録完了</b> - </p> + <p> + <b>登録完了</b> + </p> <?php + // DBに登録 // + $stmt = $db->prepare( + "INSERT INTO user_info ( + userid, + password, + fullname, + country_code, + add_date, + email, + frag + ) VALUES ( ?, ?, ?, ?, now(), ?, 0)" + ); - $stmt = $db->prepare( - "INSERT INTO user_info ( - userid, - password, - fullname, - country_code, - add_date, - email, - frag - ) VALUES ( ?, ?, ?, ?, now(), ?, 0)" - ); + $stmt->bindParam(1,$_POST["id"]); + $stmt->bindParam(2,$_POST["pass"]); + $stmt->bindParam(3,$_POST["name"]); + $stmt->bindParam(4,$_POST["country"]); + $stmt->bindParam(5,$_POST["mail"]); + $stmt->execute(); - $stmt->bindParam(1,$_POST["id"]); - $stmt->bindParam(2,$_POST["pass"]); - $stmt->bindParam(3,$_POST["name"]); - $stmt->bindParam(4,$_POST["country"]); - $stmt->bindParam(5,$_POST["mail"]); - $stmt->execute(); - // 登録成功を表示 // + $stmt = $db->prepare('select fullname from user_info where userid = ?'); + $stmt->execute(array($_POST["id"])); - $stmt = $db->prepare('select fullname from user_info where userid = ?'); - $stmt->execute(array($_POST["id"])); + $row = $stmt->fetch(PDO::FETCH_ASSOC); - $row = $stmt->fetch(PDO::FETCH_ASSOC); + print(htmlspecialchars($row['fullname']." "."さんのユーザ登録が完了しました。", ENT_QUOTES)); - print(htmlspecialchars($row['fullname']." "."さんのユーザ登録が完了しました。", ENT_QUOTES)); ?> - <form action="main.php" > + <form action="main.php"> <input type="submit" value="戻る"> </form> <?php + + } } } catch (PDOException $e) { @@ -154,6 +180,8 @@ } $pdo = null; + ?> + </body> -</html> \ No newline at end of file +</html> Modified: trunk/SmartUpload/user_form.php =================================================================== --- trunk/SmartUpload/user_form.php 2011-05-17 08:25:17 UTC (rev 47) +++ trunk/SmartUpload/user_form.php 2011-05-17 08:56:22 UTC (rev 48) @@ -68,13 +68,13 @@ } ?> -</select> -<br> -メールアドレス :<input type="text" name="mail" value="<?php print ($_POST['mail']); ?>"> ※ 半角64文字以内<br> + </select> +メールアドレス :<input type="text" name="mail" value="<?php print ($_POST['mail']); ?>"> ※ 半角64文字以内 + <input type="submit" class="update" value="登録" /> <input type="reset" value="リセット"> - </pre> - </form> + </pre> + </form> <?php }