今日の筆記試験の問題

WBOY
WBOYオリジナル
2016-06-23 14:19:07877ブラウズ

この投稿の最終編集者は bing15 で、2013-08-05 18:13:37

1. 注文システム ショッピングでは、ネットワークが遅いため、システムにより顧客が送信を複数回クリックすることがあります。何か良い解決策はありますか。 ?

2. 1 次元配列では、データ型は整数であり、小さいものから大きいものへの並べ替えにバブル ソート アルゴリズムが使用されます。

3. トランザクション処理を使用したことがありますか? 少なくとも 3 つのトランザクション処理関数を作成してください。

4. フォルダー内のすべてのファイルとサブフォルダーの機能を調べてください。



ディスカッションに返信 (解決策)

1. クリックした後、「送信中...」というプロンプトを表示してボタンをクリックできないようにし、結果が返されるまで元に戻します

2. 少し

3. 使ったことはありません..

4. ...本当にこれまで使ったことがありません

カーン、面接のリズムに乗れません

どれも比較的基本的な質問で、あまり内容がありません言う。
1. 送信ボタンを一度クリックすると、送信ボタンがグレー表示になり(クリックできなくなり)、数秒後に元に戻ります(または対応するコールバック関数)。これにより、繰り返しの送信を防ぐだけでなく、サーバーへの影響も防ぐことができます。多数の繰り返し投稿のため。

4. 再帰的に処理します。 Linux システムの場合は、. ディレクトリと .. ディレクトリの繰り返しのループ検索を避ける必要があることに注意してください。

2番目を誰も書いていないので、2番目を書きます

function maopao($arr){ $len = count($arr); for($i=1; $i<$len; $i++)//最多做n-1趟排序 {  $flag = false;    //本趟排序开始前,交换标志应为假  for($j=$len-1;$j>=$i;$j--)  {   if($arr[$j]<$arr[$j-1])//交换记录   {//如果是从大到小的话,只要在这里的判断改成if($arr[$j]>$arr[$j-1])就可以了     $x=$arr[$j];     $arr[$j]=$arr[$j-1];     $arr[$j-1]=$x;     $flag = true;//发生了交换,故将交换标志置为真   }  }  if(! $flag)//本趟排序未发生交换,提前终止算法  return $arr;    }}$shuz = array('2','4','1','8','5');$bb = maopao($shuz);print_r($bb);

私のレベルに合っていて、気に入っています。

3. トランザクション処理のいくつかのポイント
まず、データエンジンが innoDB の場合

トランザクション処理とは、SQL コマンドをまとめて実行することです。すべての SQL ステートメントが正常に実行されれば、トランザクションは成功します。
SQL コマンドが失敗すると、今度はトランザクションが失敗するため、ロールバック メソッドを呼び出して以前の操作をすべて元に戻すことができます
トランザクション処理プロセス
まずトランザクションを開きます
autocommit=0 を設定します。 .....
SQL
....
if(true)
commit();
else
rollback();


function travelPath(&$fileItem,$path) {

if(file_exists($path) )) {

if (is_dir($path)) {
if($handle = opendir($path)) {
foreach ($item as $handle) {
if($item == '.' || $item == '.. ')
リターン ;
if(!is_dir($item)) {
$fileItem[] = $item;
}

travelPath($fileItem, $item);
}
}
}

私のレベルに合っていて、気に入りました。 ... 使ったことがないです

面接のリズムに乗れません
ネットワークが遅いと言われていますが、それでも提出しています。送信中は表示されません。

フォームトークンを使用すると思います。重複提出を防ぐことができます。

フォームトークンを使用すると思います。重複提出を防ぐことができます。

では、長い待機プロセス中にユーザーにどのようなメッセージが伝えられるのでしょうか? もう一度クリックしても応答がありません。これを「送信中...」に変更してから送信する方が良いでしょうか。結果を受け取ってから戻ってきてください

これは PHP の面接の場合ですか?だったらもっと勉強したほうがいいよ!


フォームトークンを使用すると思います。重複提出を防ぐことができます。

では、長い待機プロセス中にユーザーにどのようなメッセージが伝えられるのでしょうか? もう一度クリックしても応答がありません。これをクリックした後、「送信中...」に変更してから送信する方が良いでしょうか。結果を受け取ってから戻ってきてください

私が言いたいのは、これで繰り返しの送信を防ぐことができるということですが、ネットワークが接続されていない場合、フォームのページは変更されません。自由に提出することに変わりはありません。それに、JS を使用していると言うなら、誰も JS を変更しなければ、人々は送信し続けることができますよね。ユーザーがそんなことをしないとは言わないが、もしハッカーがそうしたことをしたらどうするか教えてほしい。



フォームトークンを使用すると思います。重複提出を防ぐことができます。

では、長い待機プロセス中にユーザーにどのようなメッセージが伝えられるのでしょうか? もう一度クリックしても応答がありません。これを「送信中...」に変更してから送信する方が良いでしょうか。結果を受け取ってから戻ってきてください
私が言いたいのは、これで繰り返しの送信を防ぐことができるということですが、ネットワークが接続されていない場合、フォームのページは変更されません。自由に提出することに変わりはありません。それに、JS を使用して変更すると言うのであれば、誰も JS を変更し続けられない場合はどうなるかを教えてください。ユーザーがそんなことをしないとは言わないが、もしハッカーがそうしたことをしたらどうするか教えてほしい。

フォーム トークンは便利ですが、元の投稿者の「ネットワークが遅いため複数の送信が発生する」という状態に注意してください。この場合、ユーザーはフォーム トークンが一致して期限切れになる前に送信ボタンを複数回クリックした可能性があります。制御には JS を使用する方が適切です
さらに、この 2 つは競合せず、両方を使用できます。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。