Ver Mensaje Individual
  #5 (permalink)  
Antiguo 07/12/2010, 07:05
Avatar de kahlito
kahlito
Colaborador
 
Fecha de Ingreso: marzo-2003
Ubicación: En el Estrecho y el mar
Mensajes: 2.936
Antigüedad: 21 años, 8 meses
Puntos: 65
Respuesta: Contar envios en un formulario con submit/enviar

Hola de nuevo.

He probado la opción de contar desde un .txt y más o menos me sale correcto.

Código PHP:
<?php
$aintentos 
fopen("intentos.txt""a+");
$aintentos fopen("intentos.txt""r");
$cintentos fread($aintentos1024);
fclose($aintentos);

$cintentos $cintentos 1;
echo 
"<p>Intentos de contraseña:" $cintentos "</p>";
$aintentos fopen("intentos.txt""w");
fwrite($aintentos$cintentos);
fclose($aintentos);
?>
Luego intento recoger el nº de envios o de intentos de contraseña para no pasar de 2 ya que solo hay dos intentos para acertar la contraseña correcta pero no termino de enlazarlo todo.

Código PHP:
<?
function hacer_formulario()
{
//Primero creo el formulario para mostrar
echo "<form action=\"funciones-ejercicio-probando2b.php\" method=\"post\">
<input type=\"text\" name=\"nombre\" /> Nombre<br />
<input type=\"text\" name=\"contraseña\" /> Contraseña<br />
<input type=\"submit\" name=\"enviar\" />
</form>"
;
//Recojo las variables nombre y contraseña
$nombre=$_REQUEST[nombre];
$contraseña=$_REQUEST[contraseña];
//Preparo una contraseña real
$contraseñareal="per78";
//Abro y creo un archivo de texto para guardar nombre y contraseña
$ftextofopen("formulario.txt""a+") or die("Ha surgido un problema al crear el archivo");
fwrite($ftexto,"\r\n");
//Recojo el nombre en pantalla y en el archivo.txt
if (isset($_POST[nombre]) && $_POST[nombre]!="") {
    echo 
"$nombre <br />";}
elseif (isset(
$_POST[nombre]))
{echo 
"Rellene su nombre<br />";}
fwrite($ftexto,"Su nombre es: $nombre");
fwrite($ftexto,"\r\n");
//Preparo el número de intentos máximo para acertar la contraseña
$intentos=2;
//Recojo la contraseña en pantalla y en el archivo.txt
fwrite($ftexto,"Su contraseña es: $contraseña");
fwrite($ftexto,"\r\n");
include(
'contador-intentos.php'); //aquí meto el contador de intentos
if (isset($_POST[contraseña]) && $_POST[contraseña]!="") {
     if(
$contraseña==$contraseñareal)
     {echo 
"Contraseña correcta - ";}
    elseif (
$contraseña!=$contraseñareal and $cintentos<=2)
     {
$intentos=$intentos-1;
     echo 
"Contraseña incorrecta - Le quedan $intentos intentos - ";}
     echo 
"$contraseña<br />";}
elseif(
$contraseña!=$contraseñareal and $cintentos>2)
{echo 
"Contraseña incorrecta - No tiene más intentos";}
elseif(isset(
$_POST[contraseña]))
{echo
"Rellene su contraseña<br />";}
fwrite($ftexto,"Intentos realizados: $intentos");
fwrite($ftexto,"\r\n");
fclose($ftexto);
}
hacer_formulario();
?>
Se que con un .txt no es lo mejor pero es el ejercicio que me piden. ¿como puedo enlazar correctamente ese recuento?