如何在php中获取url值

时间:2016-10-13 10:40:47

标签: php mysql

我打开了页面,在提交中我打了另一页。我在URL中传递了id和名称

我的网址就像

http://localhost/sfrefer/sf-refer-ap.php?id=45&cust_name=testing

在sf-refer-ap.php

我使用以下代码

protocol ToDictionary {
    var badjoras: Bool { get set }
}

struct Badjoras: ToDictionary {
    var badjoras: Bool
}

let newArray: [String: Any] = ["First": [Badjoras(badjoras: true)]]

for (key, value) in newArray {
    if value is [ToDictionary] {
        print(true)
    }
}

空值进入数据库.... 如何在db

中插入id和cust_name

4 个答案:

答案 0 :(得分:1)

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

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

$id= ""; 

$custname1= ""; 

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

答案 1 :(得分:1)

您使用GET方法传递idcust_name。因为您在网址id=45&cust_name=testing

上传递了值
$id =  $_GET['id']; 
$name= $_GET['cust_name']; 

在尝试使用之前,您应该检查cust_name数组中是否确实存在索引$_GET

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

答案 2 :(得分:0)

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

$name= $_GET['name'];
$mobile= $_GET['mobile'];
$cust_name= $_GET['cust_name'];
echo $cust_name; // cust name echoed here

如果要在数据库表中保存cust_name,请使用name columns value作为$ 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]')";

答案 3 :(得分:0)

(isset($_POST['name']))? $name= $_POST['name'] : $name = "";
(isset($_POST['mobile']))? $mobile= $_POST['mobile'] : $mobile="";
(isset($_POST['cust_name']))? $custname1= $_POST['cust_name'] : $custname1 = ""; 
echo $custname1; 

但是如果你想从你的url中的id改变一个变量

(isset($_POST['id']))? $id= $_POST['id'] : $id = "";

如果你这样做 echo $id您将拥有ID

为避免在最小sql注入时使用mysqli_real_escape_string()

$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])."')";

$con是你对mysql的联系,也许你的变量名是不同的。