Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Làm cách nào để $ _POST một giá trị được gán động trong PHP?

Thay vì đặt một số dữ liệu trong name , tạo name thuộc tính nào đó bạn biết và sử dụng giá trị value thuộc tính dữ liệu không xác định, tên trong trường hợp này.

Vì vậy,

<input type='hidden' name='" . $tab[$x][1] . "' />

trở thành

<input type='hidden' name="thename" value='" . $tab[$x][1] . "' />

Bây giờ trong PHP, bạn biết những gì cần tìm. Vì vậy, tất cả những gì chúng ta cần khắc phục bây giờ là SQL Injection Attack vấn đề, chúng tôi làm điều đó bằng cách chuẩn bị truy vấn với một tham số và sau đó liên kết một giá trị với tham số như thế này

<?php
session_start();

if ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST["delete-submit"])) 
{
    require "dbh.ext.php";

    // add a parameter to the query and not a concatenated value        
    $sql = "DELETE FROM `persons` WHERE `name` = ?";

    $stmt = $conn->prepare($sql);
    
    // bind the value to the parameter
    $stmt->bind_param('s', $_POST['thename']);
    $res = $stmt->execute();

    if (!$res) {
        header("Location: ../persons/persons.php?error=sqlerror");
        exit;
    } else {
        header("Location: ../persons/persons.php");
        exit();
    }
}



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Phương thức xác thực 'caching_sha2_password' không được hỗ trợ bởi bất kỳ plugin nào có sẵn

  2. Giải pháp để Chèn ổ khóa ý định trong MySQL

  3. Làm cách nào để mysqli làm việc với DELIMITERs trong câu lệnh SQL?

  4. Truyền MySQL của -1 trả về 18446744073709551615

  5. Ping máy chủ MySQL