0

認証の問題なく動作するFacebookアプリをphpに持っています。ユーザーがログインすると、アプリは必要な権限を取得し、ページをナビゲートします。しかし、8回繰り返す必要があるsender.phpというページがあります。

1) ユーザーが sender.php にいる 2) 送信をクリックすると、(アクションフォームが「sender.php」に設定されているため) ブラウザーは再び sender.php フォームを表示します 3) 再びユーザーテキスト入力に何かを入力し、送信ボタンをクリックします。 4) 何も表示されない空白のページが表示されます。(最初のクリックでのみ機能することに注意してください。2 回目は、エラーや通知なしで空白のページのみが表示されます。)

ここにsender.phpのhtmlコードがあります:(ここを使用する最初のphpコードは残りのphpページと同じで、エラーなしで動作します)

<?php
require_once("config.php");
require_once("database.php");
require_once("facebook_include1.php");
ini_set('display_errors', 1);
error_reporting(E_ALL);
$me = $facebook->api('/me');
$access_token = $facebook->getAccessToken();
$user = $facebook->getUser();

if (isset($_GET['moneySent'])) {
$moneySent = round($_GET['moneySent']);
$senderBalance = $_GET['balance'];  
$senderRate = $_GET['senderRate'];  
$receiverRate = $_GET['receiverRate'];
}
    ?>
  <script type="text/javascript">
  function validateForm() {   
   var isValid = true;
   var moneySent = document.getElementById("moneySent").value;
   var balance = document.getElementById("balance").value;
       if (!document.getElementById("moneySent").value.length)
            {
              delete window.alert;
              alert("Please enter an amount you want to send!.");
              isValid = false;
            }
            else if (isNaN(moneySent))
              {
              delete window.alert;
              alert("Please enter a numeric value.");
              isValid = false;

              }
               else if (Math.round(moneySent) > balance) {

               delete window.alert;
               alert("The amount you want to send should be     less than your balance.");
                isValid = false;
                }
               return isValid;
           }
  </script>
  <form action="sender.php" method="get" name="sendFor" onsubmit="return validateForm();">
   <div class="yui-u">
     <input type="text" id="moneySent" name="moneySent" style="width:100px"/>
     <input type="hidden" name="balance" id="balance" value='<?php echo $senderBalance ?>'/>
     <input type="hidden" name="senderRate" id="senderRate" value='<?php echo $senderRate ?>'/>
     <input type="hidden" name="receiverRate" id="receiverRate" value='<?php echo $receiverRate ?>'/>
      </div>
      <div class="yui-u">
      <input type="submit" name="btnsearch" id="btnsearch" value="    Send &gt;    " class="search" style="margin-left:-6.5px" /><br />
    </div>
  </form>

どんな考えでも本当に感謝しています。私はphp5とapacheをphp用の最新のfacebook sdkで使用しています。

更新: Firefox でテストしました。ただし、IE8 を使用して form タグに target="_blank" を追加すると、ページは Facebook キャンバスからはみ出しますが、正常に動作し始めます。

4

1 に答える 1