0

私は PHP が初めてで、フォームが送信された後に投稿データを取得しようとしています。私が抱えている問題は、success.php ページで投稿データを取得できることですが、そのページから離れて別のページに移動すると、値を取得できなくなります。私の質問は、別のページで投稿データを取得するにはどうすればよいですか?

私のフォーム

<form name="message" method="post" action="success.php">
First Name: <input type="text" name="firstname" id="firstname"/>
<p>
Last Name: <input type="text" name="lastname" id="lastname"/>
<p>
Message:<br />
<textarea name="message" id="message" cols="45" rows="5"></textarea>
<br />
<input type="submit" name="submit" value="Submit"></input>
</form>

成功.php

<?php
$firstname = $_POST['firstname'];
$lastname = $_POST['lastname'];
$message = $_POST['message'];
echo "Firstname: $firstname<br/>";
echo "Lastname: $lastname<br/>";
echo "Message $message";
?>
4

3 に答える 3

0

フォームが success.php に送信された後、値をセッションに保存できます。

<?php
if (isset($_POST['firstname'], $_POST['lastname'], $_POST['message'])) {
session_start();
$firstname = $_POST['firstname'];
$lastname = $_POST['lastname']; 
$message = $_POST['message'];

// store session data
$_SESSION['firstname'] = $firstname;
$_SESSION['lastname'] = $lastname;
$_SESSION['message'] = $message;
}
?>

そして、他のページのデータを取得するために使用できます。

<?php
if (!isset($_SESSION)) {
session_start();
}
if (isset($_SESSION['firstname']) &&($_SESSION['lastname']) &&($_SESSION['message'])){
$firstname = $_SESSION['firstname'];
$lastname = $_SESSION['lastname'];
$message = $_SESSION['message'];
echo $firstname;
echo $lastname;
echo $message;
}
?>
于 2013-10-03T15:25:09.667 に答える