有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java PHP代码未在eclipse中运行。打印出来但未执行

我正在使用EclipseKepler编写代码。我使用JavaServlet和MySQL来存储数据(任务要求的一部分)。我对add有意见。php文件,我创建该文件是为了使用JavaScript将数据插入数据库,并将其定向到servlet。页面上还有PHP代码,显示数据库中的数据。问题是,PHP代码正在显示,但没有执行。如果我通过http://localhost/e-RMS/WebContent/add.php运行它,PHP将执行,但servlet不会执行(不会将数据添加到DB)。反过来说。如果我使用http://localhost:8080/e-RMS/add.php(来自运行ApacheTomcatV7的eclipse),它将运行servlet,但只打印PHP代码而不执行它。我已经安装了PHP PDT,解释器设置为5.4版,但仍然无法工作

添加代码。php:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Add table</title>
</head>
<body>
<?php
$servername = 'localhost';
$username = 'root';
$password = '';
$dbname = 'resto';
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
$sql="SELECT table_No, pax_No FROM reserve";
$result = $conn->query($sql);

if($result->num_rows > 0) {
    while ($row = $result ->fetch_assoc()) {
        echo "tableNo.: ".$row["table_No"]. " paxNo.: " .$row["pax_No"]."    <br>" ;
}
} else {
    echo "no result";
}

$conn->close();
?>

<form method="post" action="add">
    <label for="studentName">Table No.</label>
    <input type="text" id="tableNo" name="tableNo"/>
    <br/>
    <label for="studentID">pax amount:</label>
    <input type="text" id="paxNo" name="paxNo"/>
    <br/>
    <input type="submit" />
</form>
</body>
</html>

请注意,我不允许使用PHP插入数据。我必须使用servlet。是否可以使用Jscript从我的数据库中检索数据

Edit:INSERT语句位于servlet中

//connect to DB
    Connection conn = null;
    String db = "jdbc:mysql://localhost:3306/resto";
    String db_driver = "com.mysql.jdbc.Driver";
    String user = "root";
    String pass = "";

    try {
            Class.forName(db_driver);
            conn = DriverManager.getConnection(db, user, pass);
            PreparedStatement stmt = conn.prepareStatement("insert into reserve(table_No, pax_No) values(?,?)");

            stmt.setInt(1, tableNo);
            stmt.setInt(2, paxNo);

            stmt.executeUpdate();



    } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } 

共 (0) 个答案