$_SESSION , form html...

di il
4 risposte

$_SESSION , form html...

Semplice Pagina di scelta traduzione in italiano o inglese di una parola..
<html>

<head>
<title>CatturaDati</title>
</head>


<body>
<?php session_start(); ?>
<center><b>TRADUZIONE LINGUA ITALIANO/INGLESE</b>
<br><br>
<form action="Traduttore.php" method="post">
inserisci la parola : <input type="text" name="parola" value="<?php  echo " $_SESSION['parola']"; ?>">
<br>
<b>ITA</b><input type="radio" name="scelta" value="ita"><b>ENG</b><input type="radio" name="scelta" value="eng">
<br><br>
<input type="submit" value="INVIO">
</form>
</center>


</body>


</html>
Programmino che traduce la parola , ovviamente ho caricato il file.txt in cui ci sono i nomi ...
<?php
session_start();
if((empty($_POST["parola"]))||(empty($_POST["scelta"])))
  echo "non hai compilato un campo";
else
{
$parola=$_POST["parola"];
$scelta=$_POST["scelta"];

$_SESSION['parola']=$parola;

$dizionario=file("dizionario.txt");
$lendiz=sizeof($dizionario);

$ita=array("");
$eng=array("");

for($i=0;$i<$lendiz;$i++)
{
  $row=$dizionario[$i]; 
  $dati=explode('|',$row); 
 
    $ita[$i]=$dati[0];
    $eng[$i]=$dati[1];
   
}

$lenparo=sizeof($eng);
$trov=0;
for($i=0;$i<$lenparo;$i++)
{   
    if(($parola==trim($ita[$i]))&&($trov==0))
      {
       $trov=1;
       if($scelta=="ita")
          echo "la parola tradotta in italiano <u>".$ita[$i]."</u>";
       else
          echo "la parola tradotta in inglese <u>".$eng[$i]."</u>";
      }
    else
    { 
        if(($parola==trim($eng[$i]))&&($trov==0))
        {
          $trov=1;
          if($scelta=="eng")
             echo "la parola tradotta in inglese <u>".$eng[$i]."</u>";
          else
             echo "la parola tradotta in italiano <u>".$ita[$i]."</u>";
        }   
    }
}

if($trov==0)
echo "la parola non e' presente nel dizionario";
}
?>
<br>
<a href="form.php">TORNA INDIETRO</a>
ovviamente nella pagina html mi da l'errore nella riga 13 , per dirla in breve nella parte del value del input text .... il professore mi aveva detto di inserire cosi il comando ...ma non capisco perchè mi segnala l'errore... (HO CAPITO il funzionamento della SESSION)

4 Risposte

  • Re: $_SESSION , form html...

    Non ho provato il codice. Ma credo che comunque tu debba dare un valore di default a $_SESSION['parola'] poichè magari all'apertura della prima volta della pagina non ha alcun valore. Magari gli metti un if che controlla se è vuota o no la variabile e gliene dai uno a tua discrezione.
  • Re: $_SESSION , form html...

    Ho provato ad inserire prima dell'echo " $_SESSION['parola']"; che viene posto senza virgolette esterne sennò va in errore tutta la pagina html, un valore vuoto ma al momento della traduzione e ponendo dopo l'echo non mi confronta la parola.... mi dice direttamente che non è presente

    ho scritto cosi , per darmi questo errore :
    ....value="<?php  $_SESSION['name']=" "; echo $_SESSION['name']; ?>"
  • Re: $_SESSION , form html...

    Facendo come hai fatto tu in ogni caso a $_SESSION['name'] viene assegnato uno spazio. Devi usare il costrutto if-else.
  • Re: $_SESSION , form html...

    Alla fine ho gestito in un altro modo
Devi accedere o registrarti per scrivere nel forum
4 risposte