簡體   English   中英

參數問題

[英]Issues with Parameters

我一直在嘗試我的PHP技能,似乎當我嘗試將信息從我的Android應用程序發送到PHP時,似乎只發送了參數名稱(數據庫顯示:Lname作為示例。)數據庫。 我們正在使用PDO作為與MySQL數據庫通信的方式。

編碼如下:

$query = "INSERT INTO Customer ( Lname, Fname, Address, City, State, ZIP, Phone, myusername, mypassword ) VALUES ( ':Lname', ':Fname', ':Address', ':City', ':State', ':ZIP', ':Phone', ':myusername', ':mypassword')";

//Again, we need to update our tokens with the actual data:
$query_params = array(
    ':Lname' => $_POST['LName'],
    ':Fname' => $_POST['FName'],
    ':Address' => $_POST['Address'],
    ':City' => $_POST['City'],
    ':State' => $_POST['State'],
    ':ZIP' => $_POST['ZIP'],
    ':Phone' => $_POST['Phone'],
            ':myusername' => $_POST['username'],
            ':mypassword' => $_POST['password']
);

//time to run our query, and create the user
try {
    $stmt   = $db->prepare($query);
    $result = $stmt->execute($query_params);
}
catch (PDOException $ex) {
    // For testing, you could use a die and message. 
    //die("Failed to run query: " . $ex->getMessage());

    //or just use this use this one:
    $response["success"] = 0;
    $response["message"] = $ex->getMessage();
    die(json_encode($response));
}

您已經在查詢字符串中包括了文字值。

$query = "INSERT INTO Customer ( Lname, Fname, Address, City, State, ZIP, Phone, myusername, mypassword ) 
VALUES ( ':Lname', ':Fname', ':Address', ':City', ':State', ':ZIP', ':Phone', ':myusername', ':mypassword')";

應該

$query = "INSERT INTO Customer ( Lname, Fname, Address, City, State, ZIP, Phone, myusername, mypassword ) 
VALUES ( :Lname, :Fname, :Address, :City, :State, :ZIP, :Phone, :myusername, :mypassword)";

您需要從SQL值中刪除引號,因為它會被解釋為文字字符串。 如果刪除它們,則應該一切都很好:)

$query = "INSERT INTO Customer ( Lname, Fname, Address, City, State, ZIP, Phone, myusername, mypassword ) VALUES ( ':Lname', ':Fname', ':Address', ':City', ':State', ':ZIP', ':Phone', ':myusername', ':mypassword')";

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM