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