Gå til innhold

C#: Sende info til, og lese fra internettside


Anbefalte innlegg

Som emnetittelen sier vil jeg kommunisere med en internettside ved hjelp av et program. Det jeg vil oppnå er å sende to verdier som skal lagres på siden, som derigjen skal kunne bli lest av det samme programmet på en annen datamaskin. Hvordan kan jeg få dette til enklest mulig? Ta i betraktning at mine programmerings kunnskaper begrenser seg til C#. Takker som alltid på forhånd ^_^.

Endret av Velena
Lenke til kommentar
Videoannonse
Annonse
Med mindre C# kan bli brukt i programmering av websider.

 

C# er ypperlig til programmering av websider :thumbup:

 

Btw; hvordan skal vi kunne hjelpe deg med den delen som ligger på websiden når du ikke engang har sagt noe om hvilket språk du bruker der?

Endret av jorn79
Lenke til kommentar

Sitat: "Hvordan kan jeg få dette til enklest mulig?" inkluderte da hvilket språk jeg skulle bruke. Uansett har jeg spurt meg til råds hos en venn, som sa at dette lett kunne gjøres i PHP. Har overtalt ham til å lage et kodeeksempel som kan hjelpe meg videre med web-delen. Visste forresten ikke at C# brukes til webprogrammering, ville det være like greit å bruke det hvis jeg bestemte meg for å lage en standard webside, eller er det noen negative sider som må tas i betraktning?

Lenke til kommentar

Har fått det til nå, mener jeg. Koden under er fra websiden.

//Credit til Supernerden for denne php koden
<html dir="ltr">
   <head>
       <?php
if($_GET["password"] == "39847376332") 
{
    if ($_GET["var1"])
     { 
      file_put_contents('var1.txt', $_GET["var1"]);
      if($_GET["var2"]) 
       { 
         file_put_contents('var2.txt', $_GET["var2"]);
       } 
      echo "Password accepted";
      } 
    else 
     { 
      $var1Val = file_get_contents('var1.txt'); 
      $var2Val = file_get_contents('var2.txt'); 
      echo "The values are" . $var1Val  ."|". $var2Val; 
     }
}
else 
{ 
echo "Incorrect password"; 
}
?>
   </head>
   <body spellcheck="false">
       <p> </p>
   </body>
</html>

Her er koden fra programmet:



.....
           WebClient client = new WebClient();
           Uri mypage = new Uri("http://131115.110mb.com/7556.php?password=39847376332");
           client.OpenRead(mypage);
          Stream getit = client.OpenRead(mypage);
          StreamReader getit2 = new StreamReader(getit);
          string theString = getit2.ReadToEnd();
          int  valueIndex = theString.IndexOf(search);
          valueIndex = valueIndex + 15;
          int valueEndIndex = theString.IndexOf(search2);
          int valueLength = valueEndIndex - valueIndex;
          string value = theString.Substring(valueIndex, valueLength);
          string[] splitting = value.Split( '|' );
          string variable1 = splitting[0];
          string variable2 = splitting[1];
                                               ........

Tenker jeg starter på koden for å sende verdier senere i dag. Hvis jeg har gjort noen blundere får dere bare si ifra.

Edit: Bedre nå Jorn79?

Endret av Velena
Lenke til kommentar

Et par tips:

* Ikke definer variabler på toppen av funksjonen. Definer dem der de brukes og i så lite scope som mulig. Dette er særlig viktig når du bruker så dårlige/lite beskrivende variabelnavn som du gjør...

* Bruk using() på klasser som implementerer IDisposable. F.eks. WebClient, Stream, StreamReader

* value.Split(new Char[] { '|' }); kan skrives om til value.Split( '|' );

* RegExp hadde kanskje vært å foretrekke her.... Men det krever litt mer jobb for å lære seg dette.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...