summaryrefslogtreecommitdiff
path: root/hugo/examples/signon.php
diff options
context:
space:
mode:
Diffstat (limited to 'hugo/examples/signon.php')
-rw-r--r--hugo/examples/signon.php65
1 files changed, 65 insertions, 0 deletions
diff --git a/hugo/examples/signon.php b/hugo/examples/signon.php
new file mode 100644
index 0000000..6ab9e24
--- /dev/null
+++ b/hugo/examples/signon.php
@@ -0,0 +1,65 @@
+<?php
+/* vim: set expandtab sw=4 ts=4 sts=4: */
+/**
+ * Single signon for phpMyAdmin
+ *
+ * This is just example how to use session based single signon with
+ * phpMyAdmin, it is not intended to be perfect code and look, only
+ * shows how you can integrate this functionality in your application.
+ *
+ * @package PhpMyAdmin
+ * @subpackage Example
+ */
+
+/* Need to have cookie visible from parent directory */
+session_set_cookie_params(0, '/', '', 0);
+/* Create signon session */
+$session_name = 'SignonSession';
+session_name($session_name);
+session_start();
+
+/* Was data posted? */
+if (isset($_POST['user'])) {
+ /* Store there credentials */
+ $_SESSION['PMA_single_signon_user'] = $_POST['user'];
+ $_SESSION['PMA_single_signon_password'] = $_POST['password'];
+ $_SESSION['PMA_single_signon_host'] = $_POST['host'];
+ $_SESSION['PMA_single_signon_port'] = $_POST['port'];
+ /* Update another field of server configuration */
+ $_SESSION['PMA_single_signon_cfgupdate'] = array('verbose' => 'Signon test');
+ $id = session_id();
+ /* Close that session */
+ session_write_close();
+ /* Redirect to phpMyAdmin (should use absolute URL here!) */
+ header('Location: ../index.php');
+} else {
+ /* Show simple form */
+ header('Content-Type: text/html; charset=utf-8');
+ echo '<?xml version="1.0" encoding="utf-8"?>' . "\n";
+ ?>
+<!DOCTYPE HTML>
+<html lang="en" dir="ltr">
+<head>
+ <link rel="icon" href="../favicon.ico" type="image/x-icon" />
+ <link rel="shortcut icon" href="../favicon.ico" type="image/x-icon" />
+ <meta charset="utf-8" />
+ <title>phpMyAdmin single signon example</title>
+</head>
+<body>
+<?php
+if (isset($_SESSION['PMA_single_signon_error_message'])) {
+ echo '<p class="error">' . $_SESSION['PMA_single_signon_error_message'] . '</p>';
+}
+?>
+<form action="signon.php" method="post">
+Username: <input type="text" name="user" /><br />
+Password: <input type="password" name="password" /><br />
+Host: (will use the one from config.inc.php by default) <input type="text" name="host" /><br />
+Port: (will use the one from config.inc.php by default) <input type="text" name="port" /><br />
+<input type="submit" />
+</form>
+</body>
+</html>
+<?php
+}
+?>