WWWForm
Helper class to generate form data to post to web servers using the WWW class.
var screenShotURL=
"http://www.my-server.com/cgi-bin/screenshot.pl";
function Start() {
UploadPNG();
}
function UploadPNG() {
yield WaitForEndOfFrame();
var width =
Screen.width;
var height =
Screen.height;
var tex =
new Texture2D( width, height,
TextureFormat.RGB24,
false );
tex.ReadPixels(
Rect(0, 0, width, height), 0, 0 );
tex.Apply();
var bytes = tex.EncodeToPNG();
Destroy( tex );
var form =
new WWWForm();
form.AddField(
"frameCount",
Time.frameCount.ToString());
form.AddBinaryData(
"fileUpload", bytes,
"screenShot.png",
"image/png");
var w =
WWW(screenShotURL, form);
yield w;
if (w.error != null)
print(w.error);
else print(
"Finished Uploading Screenshot");
}
Here is a sample script that retrieves the high scores stored
in a table in an SQL database.
var highscore_url =
"http://www.my-site.com/highscores.pl";
var playName =
"Player 1";
var score = -1;
function Start() {
var form =
new WWWForm();
form.AddField(
"game",
"MyGameName" );
form.AddField(
"playerName", playName );
form.AddField(
"score", score );
var download =
new WWW( highscore_url, form );
yield download;
if(download.error) {
print(
"Error downloading: " + download.error );
return;
}
else {
Debug.Log(download.text);
}
}
Here is a sample Perl script that processes the high scores stored
in a table in an SQL database.
#!/usr/bin/perl
# The SQL database needs to have a table called highscores
# that looks something like this:
#
# CREATE TABLE highscores (
# game varchar(255) NOT NULL,
# player varchar(255) NOT NULL,
# score integer NOT NULL
# );
#
use strict;
use CGI;
use DBI;
# Read form data etc.
my $cgi = new CGI;
# The results from the high score script will be in plain text
print $cgi->header("text/plain");
my $game = $cgi->param('game');
my $playerName = $cgi->param('playerName');
my $score = $cgi->param('score');
exit 0 unless $game; # This parameter is required
# Connect to a database
my $dbh = DBI->connect( 'DBI:mysql:databasename', 'username', 'password' )
|| die "Could not connect to database: $DBI::errstr";
# Insert the player score if there are any
if( $playerName && $score) {
$dbh->do( "insert into highscores (game, player, score) values(?,?,?)",
undef, $game, $playerName, $score );
}
# Fetch the high scores
my $sth = $dbh->prepare(
'SELECT player, score FROM highscores WHERE game=? ORDER BY score desc LIMIT 10' );
$sth->execute($game);
while (my $r = $sth->fetchrow_arrayref) {
print join(':',@$r),"\n"
}
Variables
headers |
(Read Only) Returns the correct request headers for posting the form using the WWW class.
|
data |
(Read Only) The raw data to pass as the POST request body when sending the form.
|
Constructors
WWWForm |
Creates an empty WWWForm object.
|
Functions