如何在php中获取url值

如何在php中获取url值,php,mysql,Php,Mysql,我已经把这一页用板条箱包装好了,在提交中我把另一页称为“另一页”。我在url中传递id和名称 我的网址是 在sf-refere-ap.php中 我使用以下代码 $name= $_POST['name']; $mobile= $_POST['mobile']; $custname1= $_POST['cust_name']; echo $custname1; $sql = "INSERT INTO test1 (name,email,mobile) VALUES ('$cust_name','$

我已经把这一页用板条箱包装好了,在提交中我把另一页称为“另一页”。我在url中传递id和名称

我的网址是

在sf-refere-ap.php中

我使用以下代码

$name= $_POST['name'];
$mobile= $_POST['mobile'];
$custname1= $_POST['cust_name'];
echo $custname1;
$sql = "INSERT INTO test1 (name,email,mobile) VALUES ('$cust_name','$email[$i]', '$mobile[$i]')";
空值正在进入数据库。。。。
如何在db中插入id和客户名称

在URL中传递数据时,必须使用
GET
,仅在提交时使用
POST
。尝试将代码更改为:

更新:您应该首先初始化变量,然后使用isset来确保使用正确的值传递数据

$id= ""; 

$custname1= ""; 

if(isset($_GET['id']) && isset($_GET['cust_name'])){ 
$id= $_GET['id'];
$custname1= $_GET['cust_name'];
 echo $custname1;
}

在URL中传递数据时,必须使用
GET
,仅在提交时使用
POST
。尝试将代码更改为:

更新:您应该首先初始化变量,然后使用isset来确保使用正确的值传递数据

$id= ""; 

$custname1= ""; 

if(isset($_GET['id']) && isset($_GET['cust_name'])){ 
$id= $_GET['id'];
$custname1= $_GET['cust_name'];
 echo $custname1;
}

您可以使用
GET
方法传递
id
cust\u name
。因为您在url
id=45&cust\u name=testing上传递了值

$id =  $_GET['id']; 
$name= $_GET['cust_name']; 
$sql = "INSERT INTO test1 (name,email,mobile) VALUES ('".mysqli_real_escape_string($con, $cust_name)."','".mysqli_real_escape_string($con, $email[$i])."', '".mysqli_real_escape_string($con, $mobile[$i])."')";
您应该先检查索引
cust\u name
是否实际存在于
$\u GET
数组中,然后再尝试使用它

if(isset($_GET['cust_name'])){ $name = $_GET['cust_name']; } 

您可以使用
GET
方法传递
id
cust\u name
。因为您在url
id=45&cust\u name=testing上传递了值

$id =  $_GET['id']; 
$name= $_GET['cust_name']; 
$sql = "INSERT INTO test1 (name,email,mobile) VALUES ('".mysqli_real_escape_string($con, $cust_name)."','".mysqli_real_escape_string($con, $email[$i])."', '".mysqli_real_escape_string($con, $mobile[$i])."')";
您应该先检查索引
cust\u name
是否实际存在于
$\u GET
数组中,然后再尝试使用它

if(isset($_GET['cust_name'])){ $name = $_GET['cust_name']; } 

看起来你有点困惑。使用以下命令

$name= $_GET['name'];
$mobile= $_GET['mobile'];
$cust_name= $_GET['cust_name'];
echo $cust_name; // cust name echoed here
如果要在数据库表中保存cust_name,请将name columns值用作$cust_name

$sql = "INSERT INTO test1 (name,email,mobile) VALUES ('$cust_name','$email[$i]', '$mobile[$i]')";
如果要在数据库表中保存名称,请使用名称列值作为$name

$sql = "INSERT INTO test1 (name,email,mobile) VALUES ('$name','$email[$i]', '$mobile[$i]')";

看起来你有点困惑。使用以下命令

$name= $_GET['name'];
$mobile= $_GET['mobile'];
$cust_name= $_GET['cust_name'];
echo $cust_name; // cust name echoed here
如果要在数据库表中保存cust_name,请将name columns值用作$cust_name

$sql = "INSERT INTO test1 (name,email,mobile) VALUES ('$cust_name','$email[$i]', '$mobile[$i]')";
如果要在数据库表中保存名称,请使用名称列值作为$name

$sql = "INSERT INTO test1 (name,email,mobile) VALUES ('$name','$email[$i]', '$mobile[$i]')";
但是,如果您希望url中的id,请将其中一个变量更改为

(isset($_POST['id']))? $id= $_POST['id'] : $id = "";
如果你这样做
echo$id
您将拥有该id

要尽量避免sql注入,请使用
mysqli\u real\u escape\u string()

$con
是mysql的连接,可能您的变量名不同

但是,如果您希望url中的id,请将其中一个变量更改为

(isset($_POST['id']))? $id= $_POST['id'] : $id = "";
如果你这样做
echo$id
您将拥有该id

要尽量避免sql注入,请使用
mysqli\u real\u escape\u string()



$con
是mysql的连接,可能您的变量名不同

您发送GET参数而不是POST。在修复此调试代码之前,请在postLearn about中使用$\u GET而不是$\u Positse$\u GET[''']。它会告诉您,
$\u POST
中没有任何内容,因为您正在使用querystring。也对XSS和sql注入攻击敞开大门。@jhon这是一句愚蠢的话。仅仅更改动词并不能使它神奇地安全。您发送GET参数而不是POST。在修复此调试代码之前,请在postLearn about中使用$\u GET而不是$\u Positse$\u GET[''']。它会告诉您,
$\u POST
中没有任何内容,因为您正在使用querystring。也对XSS和sql注入攻击敞开大门。@jhon这是一句愚蠢的话。注意:第6行的未定义索引:C:\xampp\htdocs\sfrefere\sf-refere-ap.php中的cust\u名称注意:第13行的未定义索引:C:\xampp\htdocs\sfrefere\sf-refere\sf-refere-ap.php中的cust\u名称注意:第6行的未定义索引:C:\xampp\htdocs\sfrefere\validate.php中的cust\u名称您能发布吗您的完整代码我的错误现在可以正常工作了吗?是的。我可以将值存储在隐藏字段中吗注意:未定义索引:cust_name在C:\xampp\htdocs\sfreference\validate.php的第13行cust_name中您可以发布您的完整代码我的错误现在可以正常工作了吗?是的。我可以将值存储在隐藏字段中吗