我有两种形式,第一种形式充满了不同的网络(例如:A,B,C),第二种形式充满了不同的java函数(例如:average.java,length.java,edges.java)获取代表网络的文本文件(例如:networkA.txt是网络A的文本文件)并运行代码。我有这个部分想通了。我遇到问题的地方是,我希望减少为了提高效率而需要使用的页面数量。 我有26个不同的网络,我不想这意味着我有50个不同的网络表单文件,因此有26个不同的函数表单文件。
理想情况下,我想要network.php(用户可以从26个不同的网络中选择---> A,B,C ... Z)和单选按钮。然后我希望用户能够提交表单。弹出function.php的下一页我希望在那里有单选按钮的功能表格(例如:平均值,长度,金额。 然后使用此提交按钮(对于function.php),我想采用两个表单并使用所选择的选项(例如:网络:一个函数:边缘)通过该函数的java代码运行该网络txt文件并吐出得到一个results.php页面。
因此,为了澄清我的问题,我想知道当我从network.php转到function.php然后运行java代码并在results.php中吐出时,是否有办法保持存储网络的选择。我一直在阅读javascript中有一个show./hide函数可以做到这一点但是我找不到任何好的教程或网页来解决如何在我尝试这样做的上下文中执行此操作。任何帮助,提示,指针或示例代码都是受欢迎的,非常感谢。
NetworkA.txt
0 1
0 2
0 3
1 2
2 3
3 4
4 5
5 6
5 7
6 7
Edges.java
import java.util.*;
import java.io.*;
class Edges{
public static void main(String[] args){
try{
FileReader fr = new FileReader(args[0]);
BufferedReader br = new BufferedReader(fr);
String line = null;
int numEdges = 0;
while ( (line = br.readLine() ) != null){
System.out.println(line);
numEdges++;
}
System.out.println("Total # Edges: "+numEdges);
}
catch(Exception e){e.printStackTrace();}
}
}
RunCode.php --->这是我用来在我的php页面编译java代码
$PATH="C:\Program Files\Java\jdk1.8.0_101\bin";
echo exec("javac Edges.java 2>&1");//shows # of errors
echo "<br />";
echo exec("java Edges networkA.txt 2>&1");//this line executes it
echo "<br />";
echo shell_exec("javac Edges.java 2>&1 ");//compiles it
networkA.php ---&gt; networkA符合代码并在这种情况下给我一个结果= 10个边缘
<header>
<div class="nav">
<ul>
<li><a href="logout.php">Logout</a></li>
</ul>
</div>
<div class="form">
<?php
$PATH="C:\Program Files\Java\jdk1.8.0_101\bin";
echo exec("javac ListEdges.java 2>&1");//shows # of errors
echo "<br />";
echo exec("java ListEdges networkA.txt 2>&1");//this line executes it
echo "<br />";
echo shell_exec("javac ListEdges.java 2>&1 ");//compiles it
?>
<a class="tryagain" href='index.php' target="_blank">Try Again?</a></p>
</div>
</header>
<footer>
<div class="footer">
by Jason Bruno
</div>
</footer>
答案 0 :(得分:1)
听起来您想使用表单POST操作将您的选择提交到network.php:
<form action="network.php" method="post">
<label><input type="radio" name="networkChoice" value="A"> Network A</label>
<label><input type="radio" name="networkChoice" value="B"> Network B</label>
...put more options here...
<input type="submit">
</form>
然后,您可以使用$ _POST []
获取您在PHP中发布的数据$network = $_POST["networkChoice"];
...do stuff...
更多POST / GET示例:https://developer.mozilla.org/en-US/docs/Learn/HTML/Forms/Sending_and_retrieving_form_data#The_POST_method