ciao a tutti
mi sto avvicinando al mondo php e dopo le nozioni base e principali, sto cercando di riscrivere un sito asp da me fatto, in php

Ho un problema con una form, in particolare non riesco a riscrivere i dati inseriti dall'utente in caso di errori.

Il codice è questo:
Codice PHP:
<?php
include "inc_funzioni.php";
/*    $user = "";
    $pass = "";
    $testo = "";
    $ricorda = "";
    $q = "";*/
?>
<html>
<head></head>
<body>
<?php
if($_POST){
    
    foreach(
$_POST as $k => $v){
        print(
"- [b]" .$k"[/b]: " .$v"
\n"
);
    }
    
    
$user $_POST['user'];
    
$pass $_POST['pass'];
    
$testo $_POST['testo'];
    
$ricorda $_POST['ricorda'];
    
$q $_POST['q'];

    print(
"User = " $user "
\n"
);
    print(
"Pass = " $pass "
\n"
);
    print(
"Testo = " $testo "
\n"
);
    print(
"Ricorda = " $ricorda "
\n"
);
    print(
"q = " $q "
\n"
);
    print(
"
\n"
);
}
?>
<table>
<form name="login" method="post" action="test.php"">
<tr>
<th colspan="2">Autenticazione utente</th>
</tr>
<tr> 
<td class="parametro">Username *</td>
<td class="esteso"><input name="user" type="text" maxlength="12" value="<?php echo($user);?>" class="input120"></td>
</tr>
<tr> 
<td class="parametro">Password *</td>
<td class="esteso"><input name="pass" type="password" maxlength="12"></td>
</tr>
<tr> 
<td class="parametro">Testo</td>
<td class="esteso"><textarea name="testo"><?php $testo?></textarea></td>
</tr>
<tr> 
<td class="parametro">Memorizza?</td>
<td class="esteso">si<input name="ricorda" type="radio" value="si" checked>no<input name="ricorda" type="radio" value="no"></td>
</tr>
<tr>
<td colspan="2" class="submit">
<input name="q" type="hidden" value="1"><input type="submit" name="Submit" value="Login"></td>
</tr>
</form>
</table>
</body>
</html>
Vorrei che dopo l'invio del form rimettesse i dati inseriti qualora si presentano errori (i controlli devo ancora riscriverli)

Se lascio l'istruzione echo nel campo user mi da questo errore (attenzione che ho commentato le var all'inizio):
Notice: Undefined variable: user in D:\www\dev\test.php on line 40


Vi chiedo quindi se è necessario che nelle pagine che raccolgono dati da form le variabili associate ai campi vanno necessariamente dichiarate, ad esempio = ""

Inoltre, per associarle al valore value del campo del form, devo utilizzare semplicemente il $nomevar o echo?

Grazie mille