2013-09-17 2 views
0

Моя проблема в том, что кнопки не работают, единственное, что происходит, это перезагрузка страницы. И есть ли кто-нибудь, кто знает, как создавать новые кнопки сразу после создания их в моей базе данных?foreach и тип ввода submit in php?

<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" class="index_head" id = "login_form" > 
<?php 
     header('Cache-Control: no-cache'); 
     header('Pragma: no-cache'); 
     require "gettops.php"; 
     $tops = getTops(); 
     if(!empty($tops)) 
     foreach ($tops as $top) { 

     if(isset($_POST[$top[0]]) && !empty($_POST[$top[0]])) 
     { 
      header("location:forgot_checkin.php"); 
     } 

     ?> 
      <input type="submit" Name="print" value="<?php echo $top[0]; ?>" class="btn btn-large btn-primary" /> 

    <?php } //end foreach ?> 

<input type="submit" Name="print" value="Download Excel" class="btn btn-large btn-primary"> 
<input type="submit" Name="print" value="Download Excel" class="btn btn-large btn-primary"> 
</form> 
+0

Все в порядке , 'type =" submit "отправить форму выбранному' action', который является текущим файлом в вашем случае. –

+0

ваш код имеет некоторые проблемы, во-первых: заголовки должны быть первыми перед любым выходом, иначе PHP не сможет добавить их в заголовок ответа , а во-вторых, почему вы определили несколько кнопок отправки с похожим именем и значением? –

+0

Можете ли вы указать, что именно вы пытаетесь выполнить? – briosheje

ответ

0

Ваша форма не подает в любом месте: $_SERVER['PHP_SELF'] эквивалентно "#" или "". Вы должны указать место, в которое должна подать форма, и избегать $_SERVER['PHP_SELF']. Большинство из этих SERVER_VARS амортизируются в любом случае.

Я не совсем уверен, что на ваш вопрос по сравнению с кодом, который присутствует при создании новых кнопок, но вы можете сделать:

<? foreach ($query as $row) { ?> 
    <a href="<? echo $row['link']; ?>"><input type="button" Name="print" value="<?php echo $row['button']; ?>" class="btn btn-large btn-primary" /></a> 
<? } ?> 

Вы можете, конечно, сделать кнопку линии эхо и не оставит php. Но есть ли несколько кнопок просто перенаправлять? Или они передают форму в несколько мест? Если они просто свяжутся с вами, вам даже не нужна форма, вы можете добавить <a href="#"></a> вокруг вашей кнопки или добавить onclick="#" к тегу кнопки (или лучше: с помощью jQuery (''). Click ({}) ;.

+0

Окончательный код:

\t \t : Спасибо всем! –

+0

Если бы это помогло вам пометить мой ответ правильно, спасибо. – thepratt