
htmlでかんたんなwebページを作成する課題に取り組んでいるのですが、以下のエラーの解消方法がわからず困っています。
Warning: Undefined array key "username" in /home/user01/public_html/12/registry.php on line 26
Fatal error: Uncaught PDOException: SQLSTATE[HY093]: Invalid parameter number: parameter was not defined in /home/user01/public_html/12/registry.php:27 Stack trace: #0 /home/user01/public_html/12/registry.php(27): PDOStatement->execute() #1 {main} thrown in /home/user01/public_html/12/registry.php on line 27
どの部分が間違っているのかわからず、教えていただけないでしょうか。
パスワードが間違っている場合は正しくエラーをかえせています。
既存のユーザ名とパスワードの組み合わせ及び新規の組み合わせのときに上記のエラーメッセージに遷移する状態です。
ログイン及びメインページは別にコードを作成してあります。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>掲示板-新規登録</title>
<link rel="stylesheet" htef="../stylesheet.css">
</head>
<body>
<h1>掲示板 新規会員登録</h1>
<?php
ini_set('display_errors', 'On');
if(isset($_POST["newuname"],$_POST["password"])){
if($_POST["password"] != $_POST["passwordConfirm"]){
echo"パスワードが一致しません";
}else{
$db = "mysql: host=localhost; dbname=webapp; charset=utf8mb4";
$username = "admin";
$password = "mysql";
$pdo = new PDO($db, $username, $password);
$stmt = $pdo -> prepare("SELECT * FROM users WHERE username=:newuname");
$stmt -> bindValue(":username", $_POST["username"], PDO::PARAM_STR);
$stmt -> execute();
if($stmt -> rowCount() !=0){
echo"そのユーザー名は使われています";
}else{
$stmt = $pdo ->prepare("INSERT INTO users (username,password) VALUES(:newuname,:password);");
$stmt ->bindValue(":newuname", $_POST["newuname"], PDO::PARAM_STR);
$stmt ->bindValue(":password", $_POST["password"], PDO::PARAM_STR);
$stmt -> execute();
header("Location: ./login.php");
exit;
}
}
}
?>
<form actcion="" method="POST">
<table class="registry">
<tr>
<td>ユーザー名</td>
<td><input type="text" name="newuname"></td>
</tr>
<tr>
<td>パスワード</td>
<td><input type="password" name="password"></td>
</tr>
<tr>
<td>パスワード(確認用)</td>
<td><input type="password" name="passwordConfirm"></td>
</tr>
</table>
<div class="registry">
<input type="submit" class="registry" value="登録">
</div>
</form>
</body>
</html>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP 重複を防ぐ記述について教えて下さい。 3 2023/04/03 14:35
- PHP php ログイン 1 2022/11/01 00:24
- PHP php テーブルが作成できない 1 2022/11/17 23:41
- MySQL php テーブルを作れない 2 2022/11/17 18:22
- PHP DBのハッシュ化したパスワードをpassword_verifyで戻し照合したのですが上手く行きません 2 2023/02/06 13:24
- PHP PHPでユーザー情報を入力して簡易ログイン機能をつくってみたのですが 1 2023/05/29 08:51
- JavaScript 付属の写真のようにエラーが出るようにしたいです。 提示したコードだけでは、エラーメッセージ文字が上の 1 2021/11/23 08:27
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
html込みの文字列をPHPの変数に...
-
どうしたら確認ができますか!?
-
日付と年月日を選択するコード...
-
ここでの ②if($su_d<>"")の比較...
-
php エラー
-
phpでfopen()やfputs()が使えない
-
php ログイン
-
Localeクラスについて
-
pictureboxに表示した画像のフ...
-
onedrive にexcelファイルをア...
-
コマンドプロンプトで添付ファ...
-
HTMLファイル内の行数を指定し...
-
PHPでのindex.htmlの生成ができ...
-
require,includeとAjaxで分岐
-
訪問回数が素数の場合、違うメ...
-
phpからoutlook起動
-
フォントの色を変えるには?
-
ロケットBBSについて
-
Smarty includeでテンプレート...
-
ファイルについて・・・。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
日付と年月日を選択するコード...
-
php ログイン
-
文字化けについて
-
前後の全角スペースを削除する...
-
phpをレンタルサーバにアップし...
-
mb_convert_variablesで変換出...
-
インクルードすると おかしい
-
php エラー
-
euc-jpでしかphpが動かないサー...
-
headerで飛ばすときにURLエ...
-
zampp PHPでPOSTの変数が返っ...
-
ファイルの構造
-
エラー Warning: Cannot modif...
-
複数の文字列をファイルに書き...
-
ローカル環境で動くのに本番環...
-
PHPのクッキー情報を活用したい
-
PHPでXML取り出しについて
-
PHP で複数行の HTML を他の PH...
-
さくらインターネットレンタル...
-
文字化けについて
おすすめ情報
ご回答ありがとうございます。
なんとなく26、7行目で何かあるらしいのは分かりました。
宜しければ、どのように修正するべきか教えていただけないでしょうか。
お手数をおかけしますがエラーを解消するためにどこをどのように書き換えれば良いか教えていただきたいです。