2010-12-03 3 views
2

Я создаю приложение на основе iframe - facebook. Моя проблема в том, что всякий раз, когда я перенаправляю пользователя на любую страницу, я вижу, что страницы загружаются дважды. (во-первых, он показывает страницу без css, а затем снова загружается страница css). То же самое происходит, когда я отправляю любую форму.приложение facebook - все отправлено дважды - приложение на основе iframe

Итак, каждая форма отправляется дважды. Данные добавляются дважды для каждого действия. Более того, я могу видеть все мои данные POST в url ... facebook передает все данные сеанса по URL-адресу. Это нормально?

Я что-то упустил? Пожалуйста, помогите мне. Ниже мой код.

foreach($records as $product_list) 
{ 
?> 
    <tr> 
    <td width="250"> 
     <form name="frm_product_<?php echo $product_list->product_id; ?>" id="frm_product_<?php echo $product_list-> product_id; ?>" action="cart.php"> 
     <?php echo $product_list->product_name; ?><br /> 
     Price : <?php echo $product_list->price; ?>&nbsp;SGD<br /> 
     <input type="hidden" name="product_id" value="<?php echo $product_list->product_id; ?>" /> 
     <input type="submit" name="btn_submit_<?php echo $product_list->product_id; ?>" id="btn_submit_<?php echo $product_list->product_id; ?>" value="Add to Cart" /> 
     <input type="hidden" name="action" value="add" /> 
     </form> 
    </td> 
    </tr> 
    <tr> 
    <td>&nbsp;</td> 
    </tr> 
<?php 
} 
?> 

if(isset($_REQUEST['action']) && $_REQUEST['action']=='add') 
{ 

    $cart = new Cart($db); 
    $cart->user_id = 1; 
    $cart->product_id = $_REQUEST['product_id']; 
    $cart->qty = 1; 
    $cart->add_to_cart1(); //this is adding items two times 
} 

Спасибо заранее.

+0

Сложно сказать, что вызывает проблемы с двойным выходом/CSS, но я могу ответить на ваш вопрос о данные в URL. По умолчанию `метод` для элемента`

`- это GET, который указывает, что данные формы закодированы в URL-адресе. Чтобы скрыть информацию о форме, используйте POST: ``. Более подробную информацию см. На странице [w3 page] (http://www.w3.org/TR/html401/interact/forms.html#adef-method). – 2010-12-03 04:52:51

ответ

0

Для проблем с двойным сообщением всегда проверяйте, что у вас нет изображения href, установленного в '' (пустая строка). Это colud be или url() в css. Это не проблема, а дизайнерское решение в HTTP, пустой GET url (например, пустой файл src) означает redio запрос, который доставит вас на странице (это может быть POST). Возможно, это не ваш случай, но в прошлый раз я был тем, что мне потребовалось 3 дня, чтобы найти :-)

Смежные вопросы