1

ユーザーがゲーム用に「収集」したいアイテムの数量を入力できる Web フォームがあります。

「送信」ボタンをクリックすると、アイテムと数量を処理するために php ファイルが呼び出されます。このファイルは、アイテムを「収集」するためにユーザーがたどるリンクを格納するデータベース テーブルにクエリを実行します。

リンクテーブルは次のようにセットアップされます link_d | timestamp | item_id | link

私がやりたいことは、ユーザーが要求したものに対してテーブル内の利用可能なリンクの数をチェックし、要求に十分なリンクがあるかどうかを確認することです. ない場合は、リクエストされた数量を利用可能なリンクの数に変更したいと思います。そのためにはどうするのがベストなのだろうかと考えています。

今、私は次のようなことを考えています

for($counter=0;$counter<count($items_name);$counter++)
{
if($items_qty > $qtyavail = "select count(links.link) from links inner join items on links.item_id = items.item_id where items.name = '".$items_name[$counter]."' ;")
    {
    $items_qty = $qtyavail
    }
}

使用可能なリンクの数は時間の経過とともに変化するため、ユーザーが [送信] ボタンをクリックしたときにテーブルで使用できる現在の数が必要です。

考えや提案はありますか?

4

2 に答える 2

0

それで、私が望んでいた基準を満たす利用可能なリンクの数を取得し、それをユーザーが要求した量と比較する方法に関する特定の問題を解決するために私がやったのは、次のことでした...

  1. データベースで使用可能なリンクの数を取得するクエリを実行するまったく新しい .php ファイルを作成します。

numLinks.php

    <?php 
      require_once('phpConfig.php') ;
      require_once('myerror_handler.php') ;

      $mysqli = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_DATABASE) ;

      $numLinks = "select count(tbl_links.link) AS Count...; " ;

      $result = $mysqli->query($linksavail) ;

      if ($result) {     
          while ($row = $result->fetch_array(MYSQLI_ASSOC)) 
          {
                $numAvail = $row['Count'] ;
          }
      }

      return $numAvail ;
    ?>
  1. 次に、大量の処理を処理する PHP ファイルにそのファイルを含めました。

Process.php

    <?php
      require_once('phpConfig.php') ;
      require_once('myerror_handler.php') ;

      $mysqli = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_DATABASE) ;

      //get all the input data from jquery on clicking submit button
      $items_name=$_POST['inputnames'];
      $items_values=$_POST['valuesitems'];

      //loop for each name
            for($counter=0;$counter<count($items_name);$counter++)
            {
              include('numLinks.php') ;

              $requested = $items_values[$counter] ;

              if ($items_values[$counter] > $numavail) {
                          $items_values[$counter] = $numavail ;
              }

              echo $items_name[$counter].' -- '.$numavail.' Available -- .$requested.' Requested' ;
            }
    ?>
于 2013-06-22T23:05:19.443 に答える