【问题标题】:How to return data to java from PHP?如何从 PHP 向 java 返回数据?
【发布时间】:2016-07-29 05:49:54
【问题描述】:

我有一个 html 表单,其数据由 PHP 文件获取。为了进一步操作数据,我希望将其发送回 java 文件。我是新手。任何帮助都会大有帮助。

HTML 代码:

<html>
<head>
 <title>Console App</title>
</head>
<body>
 <div class="container-fluid">
                <div class="row">
                    <div class="col-xs-4 col-md-offset-4 vert-offset-top-8">
                        <img class="img-responsive text-center" src="img/logo.png">
                        <br/>
                        <div class="well well-lg" id="well">
                            <form class="form-horizontal" action="ServLogin" method="POST">
                                <div class="form-group">
                                    <label for="inputEmail3" class="col-sm-3 control-label">Username</label>
                                    <div class="col-sm-9">
                                        <input type="text" class="form-control" name="v_username" placeholder="Username">
                                    </div>
                                </div>
                                <div class="form-group">
                                    <label for="inputPassword3" class="col-sm-3 control-label">Password</label>
                                    <div class="col-sm-9">
                                        <input type="password" class="form-control" name="v_password" placeholder="Password">
                                    </div>
                                </div>
                                <button type="submit" class="btn btn-primary btn-block" name="submit" value="submit">Sign in</button>
                            </form>
                        </div>
                    </div>
                </div>
            </div>
</body>
</html>

PHP 代码:

<?php
$uname = $_POST["v_username"];
$pwd = $_POST["v_password"];
$submit = $_POST["submit"];

$conn = mysqli_connect("localhost","root","","vconsole");
$array = array('username' => $uname,'password' => $pwd );
if($conn){
    if($submit)
        echo json_encode($array);
}
else{
    echo '<h1> failed </h1>';
}?>

如何在 java 中获取编码的 json 数组?我目前在 XAMPP 工作。

【问题讨论】:

  • 您是否尝试过用 Java 实现代码?听起来你是在要求别人为你做这件事。
  • @codegooner 我想你的意思是 javascript
  • 也许这会有所帮助stackoverflow.com/questions/6213509/send-json-post-using-php 使用提供的解决方案可以调用 URL。响应该 POST 请求,您可以在 JSP、servlet 等中实现您的 java 代码。
  • RubioRic 对不起我的错误

标签: java php json web


【解决方案1】:

您需要使用 jQuery 发出 AJAX 请求。

您可以参考此example 了解如何使用您的 HTML 实现相应的 javascript。

发送请求后,您将收到 JSON 格式的响应,您可以相应地解析数据。

P/s:这适用于 javascript,您还可以广泛地操作您的数据,并消除您对 Web 程序对 Java 的依赖。

【讨论】:

    【解决方案2】:

    根据您的 PHP 文件的当前内容,您正在 echoing JSON 向将数据发送到 PHP 文件的人返回。既然你的 MySql 中已经有了这些数据,为什么不直接从那里读出来呢?如果您愿意,只需使用 MySql JDBC 连接器或一些 ORM (Hibernate) 并在您的 Java 应用程序中获取数据。

    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.SQLException;
    
    Connection conn = null;
    try {
        conn = DriverManager.getConnection("jdbc:mysql://localhost/vconsole?user=root&password=");
    
        // Query your DB
    
    } catch (SQLException ex) {
        // ex.getMessage(), ex.getSQLState(), ex.getErrorCode());
    }
    

    Google 将帮助with the rest

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-09
      • 2020-07-02
      • 1970-01-01
      • 2021-12-14
      • 1970-01-01
      相关资源
      最近更新 更多