正在尝试 post 网络服务器 PHP,多个参数不起作用 VB

Trying to post web server PHP, multiple parameters not working VB

正在尝试 POST 到 PHP 更新数据库。

如果我使用一个参数,它工作正常,但如果我尝试两个参数,它就不起作用。

如何 post 使用两个参数?

VisualBasic 代码

        Dim dateTime As DateTime = ReturnAsDateTime(thedate, thetime)
        Dim dateformat2 As String = "M/d/yyyy HH:mm"
        Dim dateformat3 As String = dateTime.ToString(dateformat2)
        Dim StudentNOString As String = thestudent.Number.ToString()
        Dim upString As String = "future01=" & dateformat3 & "StudentNumber=" & StudentNOString


        System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12
        Dim request As WebRequest = WebRequest.Create("https://example.com/tofilePHPfile.php")
        request.Method = "POST"
        Dim byteArray As Byte() = Encoding.UTF8.GetBytes(upString)
        request.ContentType = "application/x-www-form-urlencoded"
        request.ContentLength = byteArray.Length
        Dim dataStream As Stream = request.GetRequestStream()
        dataStream.Write(byteArray, 0, byteArray.Length)
        dataStream.Close()
        Dim response As WebResponse = request.GetResponse()
        dataStream = response.GetResponseStream()
        Dim reader As New StreamReader(dataStream)
        Dim responseFromServer As String = reader.ReadToEnd()
        reader.Close()
        dataStream.Close()
        response.Close()
        MsgBox(responseFromServer)

PHP代码

<?php

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);

// Check connection
if ($conn->connect_error) {
  die("Connection failed: " . $conn->connect_error);
}


if (isset ($_POST["future01"]) && isset ($_POST["StudentNumber"])){
    $future01 = $_POST["future01"];
    $StudentNumber = $_POST["StudentNumber"];
} else {
    $future01 = "testfortestfortest";
    $StudentNumber = "1";
    echo "not working";
}

$stmt = $conn->prepare("UPDATE pushtable SET future01=? WHERE StudentNumber=?");

$stmt->bind_param('ss', $future01,$StudentNumber);

$stmt->execute();

echo $future01;
//echo $StudentNumber;
echo "New records created successfully";

$stmt->close();
$conn->close();
?>

我认为这行有问题,因为 PHP 没有 post 正确。

   Dim upString As String = "future01=" & dateformat3 & "StudentNumber=" & StudentNOString

我已经尝试了几十种不同的方法并试图搜索我的问题,但我似乎无法找到答案。 PHP 在 IOS objective-c 代码中工作得很好。所以,我认为我的问题出在 Visual Basic 代码中。

当发生 POST 时,future01 和 StudentNumber 未被单独识别。

这些是我看过的一些页面:

https://www.informit.com/articles/article.aspx?p=131236&seqNum=7

POST Request using VBScript

https://en.wikipedia.org/wiki/POST_(HTTP)#Use_for_submitting_web_forms

您的参数之间缺少分隔符。此代码...

Dim upString As String = "future01=" & dateformat3 & "StudentNumber=" & StudentNOString

...将产生如下输出:

future01=9/29/2021 10:00StudentNumber=123