gpt4 book ai didi

c# - 从 C# 到 Php 的脚本推送不适用于应用程序

转载 作者:太空宇宙 更新时间:2023-11-03 15:42:28 25 4
gpt4 key购买 nike

好的,我正在使用 Unity 创建我的应用程序,并为它们之间的数据库创建 MSSQL,我有一个 PHP Exchange 服务器。

所以基本上我对这段代码有问题

using UnityEngine;
using System.Collections;

public class NewSession : MonoBehaviour {
string userLoginFile = "http://"ServerIP"/UnitySQL/NewSession.php?";
public UnityEngine.UI.Text NewSess;

string userid = "";
string session = "";

void OnGUI()
{
session = NewSess.text;
userid = PlayerPrefs.GetString ("UserId");
}



public void Insert()
{
if (session == "") {
StartCoroutine (LoginUser (userid));
} else {
print("DAMNSON");
}
}




IEnumerator LoginUser(string user)
{

WWW login = new WWW (userLoginFile + "UserId=" + user);
print (userLoginFile + "UserId=" + user);
yield return login;
if (login.error == null)
{

string[] credentials = login.text.Split('/');

foreach(string str in credentials)
{
string[] creds = str.Split ('=');

for(int i=0; i < creds.Length; i++)
{
print ("winner");
}


}
}

}
}

现在我不知道为什么会出现这个问题,因为当我使用 localhost 并在我的服务器上进行 php 交换时它工作正常我可以清楚地看到脚本打印是正确的,因为如果我将其复制并粘贴到地址 header 中它做它应该做的没问题。这是 PHP 脚本

<?php 
$userid = $_REQUEST['UserId'];

$user = 'user';
$pass = 'Pass';
$server = 'IP';
$database = 'MyTable';

// No changes needed from now on
$connection_string = "DRIVER={SQL Server};SERVER=$server;DATABASE=$database";
$conn = odbc_connect($connection_string,$user,$pass);
/*$q = "DECLARE @return_value int

EXEC @return_value = [dbo].[InsertAnswersCheck]
@varQuestionOptionId = '$QOI',
@varUser = '$userid'
SELECT 'Return Value' = @return_value";*/
$q = "INSERT INTO usersession (UserId) VALUES ($userid)";
$result = odbc_exec($conn,$q);
$num_rows = odbc_num_rows($result);

if($num_rows > 0)
{

} else {

}
?>

这个问题已经有一段时间了,但我不知道哪里出了问题。如果有人可以提供帮助,那就太好了。

请注意它在我的本地主机上使用相同的脚本,如果设置它将要求用户登录两次。但是当我在服务器脚本上执行它时,它只会让你陷入循环,直到你复制并粘贴打印代码。

最佳答案

我不知道,但你可以试试:

  1. 在浏览器中打开您的 print (userLoginFile + "UserId="+ user); 打印出来的内容。
  2. print(login.text); 放在 yield return login; 之后(在下一个 if 内)。
  3. else 放入 if (login.error == null) with print("Err: "+ "login.error.ToString()) ;
  4. 我在您的 PHP 脚本中没有看到任何 echo

输出形式 1 和 2 应该相同。

关于c# - 从 C# 到 Php 的脚本推送不适用于应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29695394/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com