すべてのカテゴリ » インターネット・パソコン » 技術・プログラミング

質問

終了

こんにちは、私はJavaScriptとPHPはまだ分からない初心者です。今、JavaScriptとPHPでログイン画面を作成しています。大体の機能が出来たのですが、一部よく分からないことがあります。よければ教えてください。



今、作成中のログイン画面には社員コードとパスワードの入力欄、ログインボタンがあります。社員コードだけを入力し、パスワードだけ入力されていない場合、パスワードが登録されていない社員ならパスワード変更画面に移動するので、入力した社員コードをパスワード変更画面に持って、移動したいと思い、いろいろ調べた結果、下記のソースになりました。



ログイン画面での処理


common.select(
'password_NULL_select.sql'
, [worker_code.value]
, function(jsondata){
if( jsondata != "" ){
alert("パスワードが未設定です。パスワード変更画面に移行します。") ;
window.location.href = "password.html?" + escapeI(worker_code.value) ;
} else {
message_box.innerHTML = "パスワードを入力してください。" ;
return ;
}
}
)


パスワード変更画面での処理


onload = function(){
//?以降の作業者コードの値を取得する
data = location.search.substring(1, location.search.length);
//エンコードされた文字をデコードする
data = unescape(data);
//ログイン画面から移動した場合の処理
if( data != "" ){
now_password.disabled = true ;
menu.style.visibility="hidden" ;
//既にログイン済みの場合の処理
} else {
var params = {} ;
common.phpCall(
'password_check_onload.php'
, params
, function(jsondata){
for( var j = 0 ; j < jsondata.length ; j++ ){
login_password = jsondata[j].password ;
login_id = jsondata[j].staff_cd ;
}
}
)
}
}



上記のソースで動いたのですが、escapeの所で何をやっているのか、unescapeって何という所は調べても分からない上、あるサイトで「escapeとunescapeは非推奨だから代わりにencodeURIやdecodeURIを使う」と書いてあり、もう訳が分かりません。しかも、何で非推奨かまでは書いてなかったし…。



だから、



1 escape関数が非推奨の理由
2 encodeURIやdecodeURIを使用する場合、今のescapeやunescapeを全て変更しても使用可能か。
3 そもそもescapeやunescapeやencodeURI、decodeURIの動きが分からなく、どうしてページ移動できるのかが分からない。
4 まだログインしていないユーザーの社員コードを画面移動した際にアドレスバーに見れるようになっているのは、セキュリティとしては問題か。
5 もし↑が問題の場合、JavaScriptで隠して、ページ移動する方法があるか。PHPのPOST通信みたいなものはJavaScriptにあるかどうか。




を教えてください。まだ細かい専門用語が分からず、細かい処理が分からないんです。宜しくお願い致します。

  • 質問者:fffff
  • 質問日時:2017-03-02 20:53:31
  • 0

関連する質問・相談

Sooda!からのお知らせ

一覧を見る