php-簡単なログインページの問題を作成する
演習のために、ログインページを作成しようとしています。これは、phpでの私の最初の経験です。私は多くのガイドを見て、stackoverflowからの多くの質問を見てきました。これが私が思いついたものです(データベースにXAMPPを使用しています)
フォルダーphp:login.php、session.php、welcome.php、Connection.php
フォルダページ:login.html
DB名:leftoveryouth
テーブル名:クライアント
列:id、FirstName、lastname、birthdate、street、streetnr、city、plz、username、email、Password
関連するHTMLコード:
connection.php:
{-code-2}
session.php:
{-code-3}
login.php:
{-code-4}
welcome.php:
{-code-5}
常にこのエラーコードが表示されます:
{-code-6}
現時点ではセキュリティについては気にしません。基本的なログインが機能した後、私はそれを気にします:) それで、誰かが私が間違ったことを知っていますか?
答え :
警告:include():C:\ xampp \ htdocs \ Left_over_youth_website \ php \ loginsに含めるために'/left_over_youth_website/php/connection.php'を開くことができませんでした(include_path ='C:\ xampp \ php \ PEAR') 2行目の.php
警告:include(/left_over_youth_website/pages/login.html):ストリームを開くことができませんでした:3行目のC:\ xampp \ htdocs \ Left_over_youth_website \ php\logins.phpにそのようなファイルまたはディレクトリはありません
警告:include():C:\ xampp \ htdocs \ Left_over_youth_website \ php \ loginsに含めるために'/left_over_youth_website/pages/login.html'を開くことができませんでした(include_path ='C:\ xampp \ php \ PEAR') 3行目の.php
注意:未定義の変数:9行目のC:\ xampp \ htdocs \ Left_over_youth_website \ php\logins.phpのdb
注意:未定義のインデックス:9行目のC:\ xampp \ htdocs \ Left_over_youth_website \ php\logins.phpのユーザー名
警告:mysqli_real_escape_string()は、パラメーター1がmysqliであり、9行目のC:\ xampp \ htdocs \ Left_over_youth_website \ php\logins.phpでnullが指定されていることを想定しています
注意:未定義の変数:10行目のC:\ xampp \ htdocs \ Left_over_youth_website \ php\logins.phpのdb
注意:未定義のインデックス:10行目のC:\ xampp \ htdocs \ Left_over_youth_website \ php\logins.phpのパスワード
警告:mysqli_real_escape_string()は、パラメーター1がmysqliであり、10行目のC:\ xampp \ htdocs \ Left_over_youth_website \ php\logins.phpでnullが指定されていることを想定しています
注意:未定義の変数:13行目のC:\ xampp \ htdocs \ Left_over_youth_website \ php\logins.phpのdb
警告:mysqli_query()は、パラメーター1がmysqliであり、13行目のC:\ xampp \ htdocs \ Left_over_youth_website \ php\logins.phpでnullが指定されていることを想定しています
警告:mysqli_fetch_array()は、パラメーター1がmysqli_resultであり、14行目のC:\ xampp \ htdocs \ Left_over_youth_website \ php\logins.phpでnullが指定されていることを想定しています
警告:mysqli_num_rows()は、パラメーター1がmysqli_resultであり、17行目のC:\ xampp \ htdocs \ Left_over_youth_website \ php\logins.phpでnullが指定されていることを想定しています
答え :
解決策:
<form class="form" action = "login.php" method = "post">
フォームをphpスクリプトに「ポイント」する必要があります。
また、.phpファイルを使用してその中にhtmlを書き込みます。あなたがやろうとしていることにはもっと良いです(htmlの中にphpを書いてください)
コメントの質問に基づいて編集:
したがって、phpとhtmlのみを使用する場合、phpを介して目的の場所にリダイレクトする方法は、 header
を使用することです。もう少し詳しく説明すると、フォームをクリックすると、phpスクリプトに送信されます。そこで、結果を「制御」して、パスワード応答に基づいてユーザーを目的の場所にリダイレクトする ifを作成できるようにします。
if($ password == "myPass"){
header( "場所:http://localhost/welcome_page.php");
}
そうしないと{
header( "場所:http://localhost/wrong_pass.php");
}
headerのアイデアを得るためのほんの小さな例です。
同様の質問
私たちのウェブサイトで同様の質問で答えを見つけてください。