PHP中的$ _POST没有返回任何数据

Poo*_*oja -1 php post

我写了以下php调用 fetchdetails.php

<?php
$db ="fb"; 
$con = mysql_connect("host","user","paswd") or die ("hi ".mysql_error());
mysql_select_db($db) or die("helo".mysql_error());

$id = $_POST["id"];
echo $id;
$id = (string)$id;
echo $id."hi";
Run Code Online (Sandbox Code Playgroud)

当我用它来调用它www.anyaddress.com/fetchdetails.php?id=1722315但echo $ id没有显示任何内容.尽快需要帮助.实际上我之前在其他一些代码中做了同样的事情并且工作正常.

sam*_*ayo 11

如果想要从URL查询中获取值,例如id来自的部分

http://example.com?id=42

您应始终使用$_GET超全局数组,如下所示:

$id = $_GET['id'];
echo $id; // 42
Run Code Online (Sandbox Code Playgroud)

另一方面,您应该使用$_POST通过HTML表单提交任何数据.$_POST["id"];仅在您希望通过表单提交查询时使用

无论情况如何,您都不应该信任POST/GET传递的任何数据.因此,在将它放入mysql查询之前,应该清理/转义它.

像这样: $id = mysql_real_escape_string($_GET['id']),

注意.开始使用的每个函数mysql_都是不安全的,因此您必须了解PDO或MySQLi