2014-01-22 2 views
1

Я получил идентификаторы пользователей из моей базы данных, и я хочу сделать кнопку для каждого пользователя. Мой код создает таблицу, в которой отображаются все идентификаторы, и создается кнопка для каждого из них. У меня возникли проблемы с выяснением того, как получить имя этих кнопок для использования в другом коде. Ошибка, которую я получаю, - это «неопределенная переменная» (в третьей строке), которую я, скорее всего, получаю, потому что я собираюсь получить неправильные имена кнопок.Как получить имя/идентификатор нескольких кнопок

В принципе, $ _POST в третьей строке ошибочен (среди, возможно, других вещей). Мой вопрос в том, как получить имя (или id?) Кнопок, которые я сделал: как мне исправить $ _POST или я должен использовать что-то еще?

<?php 
    if ($_SERVER["REQUEST_METHOD"] == "POST"){ 
     if(isset($_POST[$n])) header("location:" . $n . ".php"); 
    } 
?> 

    <div id="mod_user"> 
     <table id='mod_table'> 
      <th class='ttop'>#</th> 
      <th class='ttop'>Page</th> 

    <?php 
    $result = $db->prepare("SELECT * FROM User"); 
    $result->execute(); 
    while ($row = $result->fetch(PDO::FETCH_ASSOC)){ 
     $n=$row["UserID"]; 
    ?> 

    <form action="" method="post"> 
     <tr> 
     <td class='tben'><?php echo $n; ?></td> 
     <td class='tben'><button type='submit' name=<?php echo $n; ?> >Go here</button></td> 
     <br /> 
     </tr> 
    </form> 

<?php 
    } ?> 
     </table> 
    </div> 

ответ

1

Вы можете попробовать так:

<td class='tben'><button type='submit' name="usernames[<?php echo $n ?>]" >Go here</button></td> 

Таким образом, вы можете получить имя кнопки из $_POST["usernames"] массива, как показано ниже

foreach($_POST["usernames"] as $username => $btn_value) 
    echo "$username => $btn_name"; 
+0

Я предполагаю, что вы имели в виду за $ btn_name и $ btn_value в быть тем же? – Chronicle

+1

нет. Все, что ты любишь. Я просто эхо, например. –

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