Я не вижу "on" в URL - PullRequest
0 голосов
/ 21 июня 2020

Я пытаюсь получить элементы, которые проверены, чтобы я мог удалить их из базы данных.

Я использовал метод get, чтобы я мог видеть элементы, которые я выбираю.

 []21 food
 []22 eggs
 []23 bread
 []24 bread
    

это мои данные в базе данных, если я выбираю еду, она показывает

  http://localhost/shopping/delete.php?21=&delete=     (in url) 
    

должно быть 21 = 'on', но не показывает почему, и скажите, пожалуйста, как их получить удалите, если я не могу это сделать.

        <?php require_once("dbconnect.php") ?>
        <?php
        db();
        global $link;
        $query="SELECT * FROM items";
        $result=mysqli_query($link,$query);
        ?>
          <form  action="delete.php" method="get">
            <?php
        while ($arr=mysqli_fetch_array($result)) {
          ?>
    
    
    
      <ul>
        <li> <input type="checkbox" name="<?php echo $arr['id'] ?>" value=""> <?php echo $arr['id'] ?> <?php echo $arr['itemname'] ?> </li>
      
      </ul>
      <?php
       }
       ?>
    
      <button type="submit" name="delete">delete</button>
      </form>

1 Ответ

2 голосов
/ 21 июня 2020

Вот как это происходит:

http://example.com/path?foo=bar
                        ^^^ ^^^
                        
<input type="checkbox" name="foo" value="bar">
                             ^^^         ^^^

Поскольку у вас есть это:

<input type="checkbox" name="<?php echo $arr['id'] ?>" value="">

... у вас всегда будет пустое значение, как здесь:

$_GET = [
    21 => '',
];

Чтобы проверить, существует ли данный ключ, вы можете сделать это:

var_dump(isset($_GET['21']), isset($_GET['not_exists']));
bool(true)
bool(false)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...