C#
웹 페이지 (PHP
)를 호출하여 데이터베이스의 데이터에 대해 유효성 검사를 요청해야하는 응용 프로그램을 구축 중입니다. 데이터는 URL
의 HTTP 매개 변수를 통해 PHP
페이지에 제공됩니다.PHP 웹 페이지 호출에서 어떻게 값을 되돌릴 수 있습니까?
내 PHP 웹 페이지 호출에서 하나의 응답 값을 되찾고 싶습니다. 이 구체적인 예에서는 Boolean
값만 필요합니다. 그러나 하나의 요청으로 여러 값을 요청하는 방법 (심지어 가능하다면)을 배웁니다. 이 PHP
페이지는 단순히 값을 수신 삽입하거나 데이터베이스 테이블에 레코드를 업데이트하는 중입니다
<?php
$type = $_GET['type'];
$accessid = $_GET['accessid'];
$license = $_GET['license'];
$machine = $_GET['machine'];
$osver = $_GET['osver'];
$ip = getenv("REMOTE_ADDR");
$query = "select * from validatetable where licnum = '" . $license . "'";
if ($result = db_doquery($query))
{
if (db_dofetcharray($result))
{
$query = "update validatetable set lastdate = CURRENT_TIMESTAMP, lastmachine = '" . $machine . "', accessip = '" . $ip . "', osver = '" . $osver . "' where type = '" . $type . "' and licnum = '" . $license . "'";
db_doquery($query);
}
else
{
$query = "insert into validatetable set type = '" . $type . "', name = '<unknown>', licnum = '" . $license . "', accessid = '" . $accessid . "', lastdate = CURRENT_TIMESTAMP, machine = '" . $machine . "', accessip = '" . $ip . "', osver = '" . $osver . "'";
db_doquery($query);
}
}
?>
:
이것은 내가에 호출을하고있는 PHP 페이지의 단순화 된 버전입니다. 이 작업은 계속 진행될 예정이지만, 정보를 추출하고 제공된 내용과 비교하고 유효성 확인 표시기를 Boolean
으로 반환하려는 다른 테이블이 있습니다.
그리고 이것은 C# 응용 프로그램에서 내 현재 요청 코드 : 페이지의 전체 HTML이 포함 된 변수에
String webUrl = String.Format("http://www.mywebsite.com/validate.php?type=type&accessid={0}&license={1}&machine={2}&osver={3}.{4}", accessID, licNum, clientMachineName, Environment.OSVersion.Version.Major, Environment.OSVersion.Version.Minor);
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(webUrl);
request.Credentials = CredentialCache.DefaultCredentials;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
if (response.StatusCode == HttpStatusCode.OK)
{
using (Stream dataStream = response.GetResponseStream())
{
using (StreamReader reader = new StreamReader(dataStream, Encoding.UTF8))
{
String theResponse = reader.ReadToEnd(); //<--- THIS LINE
}
}
}
response.Close();
저명한 라인 결과가 반환되는가.
- 단일 값
- 값의 집합
- 뭔가 : 내가 알고 싶은 무엇
내가 (가능한 무엇이든) 하나 또는 이들의 이상으로 다시 응답을 얻을 수있는 방법이다 나는 값을 확실하게 추출 할 수있다.
[SQL 주입 공격] (http://bobby-tables.com)에 취약합니다. 이 코드를 서면으로 사용하지 마십시오. –
@MarcB Understood. 현재로서는이 테스트가 종결되었습니다. 다음은 PHP 매개 변수화 된 쿼리에 대한 연구입니다. 나는 이것을 한 번에 하나씩 물어보고있다. – DonBoitnott