[ayuda] Se pierden los datos que cargue en el formulario cuando vuelvo hacia atr

Hola a todos, perdón nose que titulo poner que sea bien descriptivo a mi problema, el cual es el siguiente:
tengo varios sistemitas en php y en todos me pasa lo mismo, asi que no voy a poner un codigo sino que voy a explicar bien mi problema: Pasa que tengo un formulario html para cargar la base de datos el cual verifico si todos los datos que cargo el usuario son correctos, si no es correcto uno o varios de esos campos el sistema envia un mensaje de error por ejemplo "el DNI solo debe contener numeros". e imprime un link para volver atras, el cual lo hago con java con un history go () el problema es que al regresar en el google chrome se pierden los datos que el usuario ya ingresó, no pasa esto en el mozilla ni en el IE. Estuve leyendo y buscando y lo que encontre es que puedo guardar esos datos que cargó en variables de sesion, pero el problema es que nose como hacer eso si alguien me podria explicar lo agradeceria un monton! :) o si hay alguna solucion mas sensilla mejor jaja muchas gracias desde ya! :)
Hola:

Lo mejor es validar los datos en el servidor, nunca con Javascript. ¿Por qué? Simplemente porque si el usuario desactiva Javascript, los datos se enviarán directamente a PHP y podrías perder, incluso, una base de datos (lee sobre PHP Injection o Code Injection).

Las sesiones se usan en PHP. Un ejemplo de sesión:

index.php
<?php session_start(); // Esta debe ser la primera línea del script, antes de cualquier cosa que se muestre por pantalla ?>
<!DOCTYPE html>
<html>
  <head>
    <!-- ARCHIVOS DE CABECERA -->
  </head>
  <body>
    <?php
      $user = '';

      if( isset( $_SESSION['usuario'] ) && ! empty( $_SESSION['usuario'] ) )
        $user = $_SESSION['usuario'];
    ?>
    <form action="script.php" method="get">
      <input type="text" name="usuario" value="<?php echo $user ?>" />
      <input type="submit" />
    </form>
  </body>
</html>

script.php
<?php
  if( isset( $_POST['usuario'] ) && ! empty( $_POST['usuario'] ) ) {
    session_start();

    $_SESSION['usuario'] = $_POST['usuario'];
    header( 'Location: index.php' );
  }
?>

Es un ejemplo simple, pero te debería servir :). Existe una alternativa con Javascript, pero depende de que el navegador sea nuevo (dependen de HTML5, por ende, Internet Explorer 8 e inferiores no sirven), y es utilizar el almacenamiento local de Javascript. Para aprender más al respecto, busca esto en Google: javascript local storage.

Saludos :).
Muchas gracias skaparate! vos siempre ayudandome, mañana a primera hora lo voy a poner en practica para ver como va, y despues te cuendo! muchisimas gracias!
Hola gente, perdón por la demora, les escribo para informar que la solucion en php funcionó de lujo, tambien me dio la posibilidad de emitir mensajes de error en el mismo formulario y esto da como un efecto que no sale de ese forulario, y el resultado que conseguí me gusto bastante! :) muchisimas y disculpen la tardanza! :)