[Webinar] Streamline your web hosting managementRegister Today

x
?
Solved

accessing php session variable in java

Posted on 2012-04-03
4
Medium Priority
?
1,255 Views
Last Modified: 2012-04-08
hello how do i access the php session variable in java?

java code
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.URL;
import java.net.URLConnection;

/**
 * Send a POST request using URLConnection
 * (Consider using HttpURLConnection or HttpsURLConnection)
 */

/**
 *
 * @author theodore werntz ii
 */
public class WebClientPHP {
    
public static void main(String[] args) {
        
        try {
            // Prepare data
            String data = "UserId" ; // THIS IS THE ELEMENT I NEED TO GET FROM PHP SESSION 
    
            // Prepare connection
            URL url = new URL("http://127.0.0.1/subtest.php?name=" 
                    + data );
            URLConnection connection = url.openConnection();
            connection.setDoOutput(true);  // Needed to write to a URLConnection
            
            // Get the response
            BufferedReader reader = new BufferedReader(
                                          new InputStreamReader(
                                                connection.getInputStream()));
            // Print the response
            String line;
            while ((line = reader.readLine()) != null)
                System.out.println(line);
            
            reader.close();  // Close the reader
        }
        catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Open in new window


php code
<applet code=ComputerInfoApplet.class width="400" height="400"
ARCHIVE="ComputerInfoSepFiles.jar">
<param name="mayscript" value="true">
<param name="scriptable" value="true">
</applet>

Open in new window



so how will i pass a variable from php to java applet and how will i access the variable in java that was passed to the applet?

thanks in advance for your help!

Theodore E. Werntz II
0
Comment
Question by:only1wizard
  • 3
4 Comments
 
LVL 111

Expert Comment

by:Ray Paseur
ID: 37801704
PHP can expose any variable value in the browser output stream with a simple echo statement, and can also make a one-time echo that terminates the script with die().  If your Java program can call a PHP script and read the browser output your PHP script could expose the contents of $_SESSION["userid"] with something as simple as this.
<?php
session_start();
if (!empty($_SESSION["userid"]))
{
    die($_SESSION["userid"]);
}
else
{
    die('NO USER ID');
}

Open in new window

0
 

Author Comment

by:only1wizard
ID: 37801787
but that doesnt help the problem of accessing the php $_SESSION variable in java. I understand that accessing the variable by $_SESSION and or echo $VARIABLE.

what i dont understand is how to access the php variable in java?

thanks in advance for your help!
0
 

Accepted Solution

by:
only1wizard earned 0 total points
ID: 37802541
i got it working

here is the php code
<?php 
// set session variables
if (!isset($_SESSION)) {
  session_start();
}
$_SESSION['first'] = '1';
$_SESSION['second'] = '2';
$_SESSION['third'] = '3';

?>

Open in new window


html code
<applet code="MyApplet.class" height="100" width="400" ARCHIVE="MyApplet.jar">
<param name="first" value="<?php echo $_SESSION['first']; ?>" />
<param name="second" value="<?php echo $_SESSION['second']; ?>"  />
<param name="third" value="<?php echo $_SESSION['third']; ?>"  />
</applet>

Open in new window


java code

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
//package myapplet;

/**
 *
 * @author theodore werntz ii
 */
import java.applet.*;    
import java.awt.*;

public class MyApplet extends Applet  {

    /**
     * @param args the command line arguments
     */
    
    public void init() {
  add(new Label(getParameter("first")));
  add(new Label(getParameter("second")));
  add(new Label(getParameter("third")));
  }
    
}

Open in new window

0
 

Author Closing Comment

by:only1wizard
ID: 37820881
ive worked out a solution for cross language communication with sessions
0

Featured Post

The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

The title says it all. Writing any type of PHP Application or API code that provides high throughput, while under a heavy load, seems to be an arcane art form (Black Magic). This article aims to provide some general guidelines for producing this typ…
No other job is as rewarding and demanding as building an iPhone app is. It is not really in the hands of the developer for the success of an iPhone app. Many factors operate jointly for every iOS application's success in the market.
This theoretical tutorial explains exceptions, reasons for exceptions, different categories of exception and exception hierarchy.
This tutorial explains how to use the VisualVM tool for the Java platform application. This video goes into detail on the Threads, Sampler, and Profiler tabs.
Suggested Courses

590 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question