2012-04-12 18 views
0

サンプルカートカートのアプリケーションを実行していますが、私の要件は、ananymousユーザーが「カートに追加」ボタンをクリックしようとしているときに成功すれば 'login.php'ユーザだけがカートを見ることができる。以下はカートに追加ボタンとiamで、この種のajax呼び出しを使用して資格を確認しています。だから、SRの提案どおりにボタンカートに入れるボタンを押すとログイン画面が表示されます

onClick=\"window.open('cart.php?action=add&id=" . $id . "','_self');\ 

そしてここからこの部分を削除し、この

のようなものを試してみてください

echo "<input id=add type='button' onClick=\"window.open('cart.php?action=add&id=" . $id . "','_self');\" value='Add to Cart' />"; ====> "add to cart button" 

Ajax呼び出し

$("#login").click(function() { 

      var action = $("#form1").attr('action'); 
      var form_data = { 
      username: $("#username").val(), 
      password: $("#password").val(), 
      is_ajax: 1 
     }; 

     $.ajax({ 
      type: "POST", 
      url: "login.php", 
      data: form_data, 
      success: function(response) 
      { 
       if(response == 'success') 
        $("#form1").slideUp('slow', function() { 
         $("#message").html("<p class='success'>You have logged in successfully!</p>"); 
        }); 
       else 
        $("#message").html("<p class='error'>Invalid username and/or password.</p>");  
      } 
     }); 

     return false; 
    }); 
+2

質問は何ですか? –

+1

こんにちは、詳細を説明してください、真剣にあなたがしたいことを取得していない..?あなたのIDはこのid = 'add'のようになります。一重引用符で囲みます。 –

+0

匿名ユーザーが「カートに追加」ボタンをクリックすると、ユーザーが有効かどうかを確認するログイン画面が表示されます。「カートに追加」ボタンコードを確認してください – user1160126

答えて

0

ありがとう助けてくださいjqueryコードでこれらの変更を行う....または同義語、あなたの要件に応じて...

$("#add").click(function(e) { 
     e.preventDefault()   // will stop the form from submitting...   
     var SKU_data = {sku : 12345, quantity:3} //some data related to the product to be sent to some script to add to cart 

     var url_to_check_user_session = 'checkAuthentication.php' ;  //which can be the same as action 
     $.get(url_to_check_user_session, {username: $("#username").val()}, function(data){ 
      if(data=='authenticated'){ 
       $.ajax({  //code to check the login authentication 
        type: "POST", 
        url: "addToCart.php", 
        data: SKU_data, 
        success: function(response) 
        { 
         if(response == 'success') 
          $("#message").html("<p class='error'>Product added to your cart.</p>"); 
         else 
          $("#message").html("<p class='error'>Ohh!! something went wrong while adding the product to the cart.</p>");  
        } 
       });} 
      else{    // now do the real thing 
       $("#form1").slideDown(); 
       $("#login").click(function() { 
        $.ajax({ 
         type: "POST", 
         url: "login.php", 
         data: form_data, 
         success: function(response) 
         { 
          if(response == 'success') 
           $("#form1").slideUp('slow', function() { 
            $("#message").html("<p class='success'>You have logged in successfully!</p>"); 
           }); 
          else 
           $("#message").html("<p class='error'>Invalid username and/or password.</p>");  
         } 
        }); 
       }) 
       } 
      }) 

     return false; 
    }); 

この情報がお役に立てば幸いです...

+0

サーお礼ありがとう.......... – user1160126

+2

私はそれを更新しました.....この新しいコードを使用します.... ... –

+0

このスタックオーバーフローは人々を騒々しくさせます。 Googleは今何をしている..!すべての簡単な事のために人々はGoogleでそれを守る。それ以上のことを行うStackoverflow。とにかくその罰金。 –

関連する問題