嗨,我有mysql数据库和名为upd.php的php文件,我想用c#和php更新我的数据库记录,我使用下面的codeMethod 1,一切都很好,工作正常。
PHP代码:
<?php
$servername = "localhost";
$username = "Crypted";
$password = "appCrypted";
$dbname = "Crypted";
// Post Method
//$hwInfo = $_POST["hwInfo"];
$trial = $_GET["trial"];
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "UPDATE users SET trial='$trial' WHERE hwInfo='4871-1598-0155-1531'";
if ($conn->query($sql) === TRUE) {
echo "Record updated successfully";
} else {
echo "Error updating record: " . $conn->error;
}
$conn->close();
?>
C#代码:
string urlAddress = "http://localhost.ir/ClassSRM/upd.php";
using (WebClient client = new WebClient())
{
NameValueCollection postData = new NameValueCollection()
{
{ "trial", "10" }
};
Console.WriteLine(urlAddress);
Console.WriteLine(postData);
string pagesource = Encoding.UTF8.GetString(client.UploadValues(urlAddress, postData));
}
现在,如果我输入此链接http://localhost.ir/ClassSRM/upd.php?trial=3000我的记录更新成功,但我想发送hwInfo从c#到upd.php,我使用下面的代码方法2,但没有工作
<?php
$servername = "localhost";
$username = "Crypted";
$password = "appCrypted";
$dbname = "Crypted";
// Post Method
//$hwInfo = $_POST["hwInfo"];
$trial = $_GET["trial"];
$hwInfo = $_GET["hwInfo"];
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "UPDATE users SET trial='$trial' WHERE hwInfo='$hwInfo'";
if ($conn->query($sql) === TRUE) {
echo "Record updated successfully";
} else {
echo "Error updating record: " . $conn->error;
}
$conn->close();
?>
C#代码:
string urlAddress = "http://localhost.ir/ClassSRM/upd.php";
using (WebClient client = new WebClient())
{
NameValueCollection postData = new NameValueCollection()
{
{ "hwInfo", hwInfo },
{ "trial", "10" }
};
Console.WriteLine(urlAddress);
Console.WriteLine(postData);
string pagesource = Encoding.UTF8.GetString(client.UploadValues(urlAddress, postData));
}
发布于 2018-07-04 04:23:37
我知道这是一个老生常谈的问题,但它可能会对某些人有所帮助。您的示例可以工作,但我在PHP代码中做了一些更改,我使用POST方法,以下是我的工作示例:
<?php
$servername = "localhost";
$username = "Crypted";
$password = "appCrypted";
$dbname = "Crypted";
$trial = isset($_POST['trial']) ? $_POST['trial'] : '';
$hwInfo = isset($_POST['hwInfo']) ? $_POST['hwInfo'] : '';
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "UPDATE users SET trial='$trial' WHERE hwInfo='$hwInfo'";
echo "sql: " . $sql;
if ($conn->query($sql) === TRUE) {
echo "Record updated successfully";
} else {
echo "Error updating record: " . $conn->error;
}
$conn->close();
?>
https://stackoverflow.com/questions/45029708
复制相似问题