Solved

refresh wipes display?

Posted on 2011-03-18
3
249 Views
Last Modified: 2012-05-11
I have a simple, editable, html table (see attached).

When submit is pressed to save data, the page
is refreshed and the display data is lost.

How can the display be retained after submit?
<td><input type="text" name="r1c1" /></td>
<td><input type="text" name="r1c2" /></td>
<td><input type="submit" value="save"/> </td>
</tr>
<tr>
<td><input type="text" name="r2c1" /></td>
<td><input type="text" name="r2c2" /></td>
<td><input type="submit" value="save"/></td>

Open in new window

0
Comment
Question by:pillmill
  • 2
3 Comments
 
LVL 83

Expert Comment

by:Dave Baldwin
ID: 35169291
Here's one way.  Save as 'postdata.php' or something '*.php' and run it on your server.
<?php 

$r1c1 = "";
$r1c2 = "";
$r2c1 = "";
$r2c2 = "";

if(isset($_POST["submit"])) {
	if(isset($_POST["r1c1"])) $r1c1 = $_POST["r1c1"];
	if(isset($_POST["r1c2"])) $r1c2 = $_POST["r1c2"];
	if(isset($_POST["r2c1"])) $r2c1 = $_POST["r2c1"];
	if(isset($_POST["r2c2"])) $r2c2 = $_POST["r2c2"];
	}
 ?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
 "http://www.w3.org/TR/html4/loose.dtd">

<html>
<head>
<title>Post Data</title>
</head>
<body>
<h1>Post Data</h1>

<form action="" method="post">

<table border="0" cellpadding="0" cellspacing="0" summary="">
<tr>
<td><input type="text" name="r1c1" value="<?php echo $r1c1; ?>" /></td>
<td><input type="text" name="r1c2" value="<?php echo $r1c2; ?>" /></td>
<td><input type="submit" name="submit" value="save"/> </td>
</tr>
<tr>
<td><input type="text" name="r2c1" value="<?php echo $r2c1; ?>" /></td>
<td><input type="text" name="r2c2" value="<?php echo $r2c2; ?>" /></td>
<td><input type="submit" name="submit" value="save"/></td>
</tr>
</table>

</form>
</body>
</html>

Open in new window

0
 
LVL 20

Accepted Solution

by:
Mark Brady earned 500 total points
ID: 35171219
The best way I have ever seen is to use php sessions. Sessions store posted data in session variables so as long as you open a session on the page it will retain the form data in each input field. Here is how you do it. I have made a very quick example with only first and last names just to show you how it keeps the data. Save the attached file "session.php" in the same folder as this php script.

<?php // this is your php script with the form in it.
include("session.php"); // important - don't forget to add this line.

// just for this test
$first = $_POST['first'];
$last = $_POST['last'];
if($first != "" && $last != "") echo "Hello ".$first." ".$last;

// Put all your form processing code here.
?>
<!-- now the form -->
<form method="POST">
Firstname <input name="first" type="text" value="<?php echo $_SESSION['first'];?>" />
Lastname <input name="last" type="text" value="<?php echo $_SESSION['last'];?>" />
<input type="submit" value="Submit" /></form>



That's it. Save it as some name.php and run it. Fill in the two fields and submit the form. session.php
0
 
LVL 20

Expert Comment

by:Mark Brady
ID: 35171227
The beauty of doing it this way as opposed to DaveBaldwins method is that you can use this posted data on any other page on your website. As long as you include that session.php file on a php page you can get the data. Whatever the name of your input fields, is the name of the session variable. So on a completely different page you can do this.

<?php
include("session.php");
// some code goes here. Now if you want to know what was posted in that other form just do this:

$first = $_SESSION['first'];
$last = $_SESSION['last'];

// it takes place of the usual $_POST['first']; and it remains in that session variable until you close the browser or you kill the session.

session_destroy();

that will end the session and all variables inside it. Hope this is what you are looking for.
0

Featured Post

Microsoft Certification Exam 74-409

Veeam® is happy to provide the Microsoft community with a study guide prepared by MVP and MCT, Orin Thomas. This guide will take you through each of the exam objectives, helping you to prepare for and pass the examination.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article discusses four methods for overlaying images in a container on a web page
Since pre-biblical times, humans have sought ways to keep secrets, and share the secrets selectively.  This article explores the ways PHP can be used to hide and encrypt information.
In this tutorial viewers will learn how to embed an audio file in a webpage using HTML5. Ensure your DOCTYPE declaration is set to HTML5: : The declaration should display (CODE) HTML5 is supported by the most recent versions of all major browsers…
The viewer will learn how to create and use a small PHP class to apply a watermark to an image. This video shows the viewer the setup for the PHP watermark as well as important coding language. Continue to Part 2 to learn the core code used in creat…

820 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question