以下のコードをご覧ください。他のPHP Webページが呼び出されたWebページにコントロールを返すにはどうすればいいですか
index.php
のコントロールを終了フォームタグの後の実行可能ステートメントに戻すと、processData.php
の末尾に表示されるコードではなく、index.php
ページのクエリ結果が表示されます。
私はこのフォーラムをGoogleで検索しましたが、解決策は見当たりませんでしたか? Fortran、Visual Basicに精通している人は、呼び出しルーチンに戻るために使用できるreturn
ステートメントに感謝します。 return
と似た声明が、PHPの呼び出し側Webページにコントロールを渡すことはありますか?
index.php
のためのコード:processData.php
ため
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Sales Report Summary</title>
</head>
<body>
<h1>Online Sales Report Demo
<br>
<br>
<form method="post" action="processData.php">
Enter Your Full Name:<input type="text" name= "author_name" />
<br>
Enter Your eMail Address:<input type="text" name= "author_email" />
<br>
<input type="submit" value="Submit">
</form>
**//Question - How to return the control to a statement after </form> tag to print values instead of processData.php**
</body>
</html>
コード:
<?php
// define variables and set to empty values
$author = $email = "";
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
//Next extract the data for further processing
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$author = test_input($_POST['author_name']);
$email = test_input($_POST['author_email']);
//Next echo the Values Stored
echo "<br>";
echo "<br>Your Name:".$author;
echo "<br>Your Email Address:".$email;
}
?>
<?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db('mydatabase');
$sql = "SELECT Sales_Author, Sales_Date, Sales_Channel, Sales_Title, Sales_Unit, Sales_Royalty, Sales_Currency
FROM Sales_tbl
WHERE Sales_Email= '" . $email . "' ORDER BY Sales_Date ASC";
$result = mysql_query($sql, $conn);
if(!$result)
{
die('Could not fetch: ' . mysql_error());
}
?>
<table border="2" style="background-color: #84ed86; color: #761a9b; margin: 0 auto;">
<thead> <tr> <th>Date</th><th>Channel</th><th>Title</th><th>Units</th><th>Royalty</th><th>Currency</th></tr></thead><tbody>
<?php
while($row = mysql_fetch_assoc($result)){
echo "<tr>
<td>{$row['Sales_Date']}</td>
<td>{$row['Sales_Channel']}</td>
<td>{$row['Sales_Title']}</td>
<td>{$row['Sales_Unit']}</td>
<td>{$row['Sales_Royalty']}</td>
<td>{$row['Sales_Currency']}</td>
</tr>\n"; }
?>
</tbody></table>
<?php
mysql_close($conn);
echo "Fetched data successfully\n";
?>
</body>
</html>
"コントロールを返す"ことはできません。 "index.php"にリダイレクトするだけで、index.phpで使用できるパラメータを追加することができます。 – Jeff
もちろん、あるスクリプトを別のスクリプトに 'include 'することもできます。 – Jeff
ありがとうございますJeff.あなたが提案したように、別の振る舞いをするために、index.phpにリダイレクトバックとパラメータインクルードの例/コード/リファレンスを教えてください。 – av104