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も見ています
-
外出時に「待たせる妻」vs イライラする「待つ夫」は日本だけ?見習いたい海外事情
夫の家事参加に積極的なイメージのある海外でも、同様の事例はあるのか。結婚カウンセラーの佐竹悦子さんに伺ってみた。
-
プログラマーがHTMLとCSSでウェブデザインをするのは大人の幼稚園なんじゃないかと思い込んでる
その他(プログラミング・Web制作)
-
プログラミングで詰まった時って皆さんどうしていますか?
その他(プログラミング・Web制作)
-
[初心者]javascriptのfor文でなぜか繰り返し処理をしない。理由がわかりません。
JavaScript
-
-
4
「マック」を使う理由は?(ウインドウズではなく)
その他(OS)
-
5
ボタンが押されたらWebページの文字コードを 変える、というプログラミングを書きたいです。 目的は文
HTML・CSS
-
6
C言語って古いですか?
C言語・C++・C#
-
7
これの対応OSを教えて下さい。php-8.3.0-src.zip
PHP
-
8
Javaって使いますか、もう古いですか?C++とどっちがいいですか?分析でC++使う授業ありましたけ
C言語・C++・C#
-
9
パイソン、データーサイエンス。辞書で2つ囲むのはなぜですか。[[ ]]
オープンソース
-
10
SFTPなどは使わないホームページやプログラムファイルの公開方法
PHP
-
11
ホームページにCGIを設置したのですが・・・Ⅱ
CGI
-
12
写真のプログラムは、1からnまでの、全整数の積すなわち階乗値を求めて返却する関数を作成したいのですが
C言語・C++・C#
-
13
Linux のシェルスクリプトの強制終了の仕方について
UNIX・Linux
-
14
C言語について。
C言語・C++・C#
-
15
サブルーチンを使った再帰的なプログラム
C言語・C++・C#
-
16
大抵のアプリが32bitバージョンなのは何故ですか?64bitのパソコンでも正常に動作しますか?
フリーソフト
-
17
プログラミング言語の制作方法について
C言語・C++・C#
-
18
VisualStudio2022でC言語プログラムで全角文字を使用すると不明なエラーが表示される
C言語・C++・C#
-
19
ものづくりに向いているプログラミング言語ってなんですか?家電にもプログラミングが使われてるとか
その他(プログラミング・Web制作)
-
20
C言語について。
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
前後の全角スペースを削除する...
-
phpでfopen()やfputs()が使えない
-
日付と年月日を選択するコード...
-
phpの画面表示が真っ白です
-
PHPの勉強中の初心者です。
-
CSSの画像をPHPで毎月自動で変...
-
PHP(smarty)についての質問(文...
-
フォントの色を変えるには?
-
PHPのWARNINGをcatchするには
-
onedrive にexcelファイルをア...
-
PHP8を使うと、大量のWarningが...
-
バッチを用いたフォルダの自動移動
-
CSV出力にHTMLが入ってしまう
-
「クラス関数」「メンバ関数」...
-
index.phpって何ですか? 具体...
-
現在位置より2つ上のディレク...
-
透過PNGが透過されない!!
-
PHP 文字列を代入した配列を変...
-
PHPのif文でその処理を途中で抜...
-
$_SESSION 有効期限をブラウザ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
日付と年月日を選択するコード...
-
htmlのエラーについて(デバッグ)
-
文字コードの出力を変更したい
-
文字化けについて
-
前後の全角スペースを削除する...
-
XAMPP1.7.1上でPHPを実行すると...
-
php エラー
-
パスワード認証ページ作りたい...
-
PHP(smarty)についての質問(文...
-
ここでの ②if($su_d<>"")の比較...
-
phpの画面表示が真っ白です
-
mb_convert_variablesで変換出...
-
どうしたら確認ができますか!?
-
html内のphpスクリプトについて
-
機種依存文字の文字化けについて
-
エラー Warning: Cannot modif...
-
【PHP?】header("location : ...
-
javascriptからphpへ変数
-
ローカル環境で動くのに本番環...
-
PEARのXML/Unserializer.phpが...
おすすめ情報
ご回答ありがとうございます。
なんとなく26、7行目で何かあるらしいのは分かりました。
宜しければ、どのように修正するべきか教えていただけないでしょうか。
お手数をおかけしますがエラーを解消するためにどこをどのように書き換えれば良いか教えていただきたいです。