C:\Program Files\OSGeo\MapGuide\Web\www\phpsamples\hello_map\..\main.php
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
<!--
// Copyright (C) 2004-2011 by Autodesk, Inc.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of version 2.1 of the GNU Lesser
// General Public License as published by the Free Software Foundation.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-->
<?php
require_once('common/common.php');
try
{
// Initialize the web extensions,
MgInitializeWebTier ($webconfigFilePath);
// Connect to the site server and create a session
$userInfo = new MgUserInformation("Author", "author");
$site = new MgSite();
$site->Open($userInfo);
}
catch (MgException $e)
{
echo "Could not connect to the MapGuide site server. Please contact the MapGuide site administrator.";
die();
}
try
{
$sessionId = $site->CreateSession();
$siteConn = new MgSiteConnection();
$siteConn->Open($userInfo);
// Define some constants
$webLayout = "Library://Samples/Layouts/PHPSamples.WebLayout";
$title = "MapGuide Developer's Guide PHP Samples";
// We check for the existence of the specified WebLayout
//
// If it doesn't exist, we load a copy from the WebLayout.xml on disk. This is a basic example
// of programmatically loading resource content into to the repository.
$wlResId = new MgResourceIdentifier($webLayout);
$resSvc = $siteConn->CreateService(MgServiceType::ResourceService);
if (!$resSvc->ResourceExists($wlResId)) {
$wlPath = dirname(__FILE__)."//WebLayout.xml";
$wlByteSource = new MgByteSource($wlPath);
$wlByteReader = $wlByteSource->GetReader();
// NOTE: The Author account generally has write access into the site repository
// which is why we're doing it like this.
// If this was an Anonymous user, they can't write into the session repository. We would normally
// load our content into a session-based repository and modify $webLayout to point to our
// session loaded resource
$resSvc->SetResource($wlResId, $wlByteReader, null);
}
}
catch (MgException $e)
{
echo "ERROR: " . $e->GetExceptionMessage("eng") . "\n";
echo $e->GetStackTrace("eng") . "\n";
}
?>
<html>
<head>
<title><?= $title ?>
</title>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<meta http-equiv="content-script-type" content="text/javascript" />
<meta http-equiv="content-style-type" content="text/css">
<link href="styles/globalStyles.css" rel="stylesheet" type="text/css" />
<link href="styles/globalStyles.css" rel="stylesheet" type="text/css" />
</head>
<frameset rows="110,*" frameborder="NO" border="0" framespacing="0">
<frame src="common/Title.php?TitleText=<?= $title ?>" name="TitleFrame" scrolling="NO" noresize />
<frame src="../mapviewerajax/?SESSION=<?= $sessionId ?>&WEBLAYOUT=<?= $webLayout ?>" name="ViewerFrame" />
</frameset>
</html>