-
Form con autorisposta
mi servirebbe un form php con 5 campi:
- nickname
- password
- ripeti password (dev'essere uguale per forza a ciò che è stato digitato in password altrimenti un alert lo avverte)
- email
- ripeti email (stessa cosa per ripeti password)
una volta inviati i dati vengono redirectati ad una pagina di conferma,e gli verrà invita in automatico una mail con scritto ciò che voglio :grin:
chi sa fare questo? :grin:
-
eh ma devi specificare anche cosa arriverà per mail......
-
bhe nn lo posso cambiare? ^_^
-
Non sarà giustissimo:
<?php
$errore = "";
$err = "false";
if(isset($_POST['oki'])) {
if(empty($_POST['pass']) || empty($_POST['pass2']) || empty($_POST['email']) || empty($_POST['email2']) || empty($_POST['nome'])) {
$err = "true";
$errore .= "Mancano dei dati";
}
if($_POST['pass'] !== $_POST['pass2'])
$err = "true";
$errore = "Password diverse";
}
if($_POST['email'] !== $_POST['email2'])
$err = "true";
$errore = "email diverse";
}
if( $err == "false") header("Location: altrapagina.php?nome=". $_POST['nome'] . "?pass=" . $_POST['pass'] . "?email=" . $_POST['email'] );
}
echo $errore;
?>
<form action = "<?php echo $_SERVER['PHP_SELF']; ?>" method = "post">
Nome <input name = "nome" /><br />
password <input type = "password" name = "pass" /><br />
conferma password <input type = "password" name = "pass2" /><br />
email <input name = "email" /> <br />
conferma <input name = "email2" /><br />
<input type = "submit" value = "Ok" name = "oki" />
</form>
altrapagina.php
<?php
echo "Nome: " . $_GET['nome'];
echo "<br />";
echo "Password: " .$_GET['pass'];
echo "<br />";
echo "email: " .$_GET['email'];
?>
-
grazie demenziale,ma i dati dove saranno inviati? ^_^
-
Ho dimenticato l'email. se lui vuole confermare sempre in altrapagina.php
<?php
if(isset($_POST['conferma'])) {
$nome = $_POST['nome'];
$pass = $_POST['pass'];
$email = $_POST['email'];
$testo = "La tua email: $email;\nLa tua password: $pass;\nIl tuo nome: $nome";
$testo .= "Altro testo qui";
mail($email, "Oggetto della email", $testo, "From: tuaemail@qui\n");
header("Location: index.php");
}
echo "Nome: " . $_GET['nome'];
echo "<br />";
echo "Password: " .$_GET['pass'];
echo "<br />";
echo "email: " .$_GET['email'];
?>
<form action = "<?php echo $_SERVER['PHP_SELF'];?>" method = "post">
<input type = "hidden" name = "nome" value = "<?php echo $_GET['nome'];?>" />
<input type = "hidden" name = "email" value = "<?php echo $_GET['email'];?>" />
<input type = "hidden" name = "pass" value = "<?php echo $_GET['pass'];?>" />
<input type = "submit" value = "conferma" name = "okey" />
</form>
-
il codice che mi hai dato adesso va nella pagina di conferma esatto?
ciao e grz!
-
esattamente da altrapagina.php insomma
<?php
if(isset($_POST['conferma'])) {
$nome = $_POST['nome'];
$pass = $_POST['pass'];
$email = $_POST['email'];
$testo = "La tua email: $email;\nLa tua password: $pass;\nIl tuo nome: $nome";
$testo .= "Altro testo qui";
mail($email, "Oggetto della email", $testo, "From: tuaemail@qui\n");
header("Location: index.php");
}
echo "Nome: " . $_GET['nome'];
echo "<br />";
echo "Password: " .$_GET['pass'];
echo "<br />";
echo "email: " .$_GET['email'];
?>
<form action = "<?php echo $_SERVER['PHP_SELF'];?>" method = "post">
<input type = "hidden" name = "nome" value = "<?php echo $_GET['nome'];?>" />
<input type = "hidden" name = "email" value = "<?php echo $_GET['email'];?>" />
<input type = "hidden" name = "pass" value = "<?php echo $_GET['pass'];?>" />
<input type = "submit" value = "conferma" name = "okey" />
</form>
Tutto questo (quello sopra questa riga) va in un file a parte (file di conferma)
Mentre tutto questo (ovvero quello che sta qui sotto) va nel file della form
<?php
$errore = "";
$err = "false";
if(isset($_POST['oki'])) {
if(empty($_POST['pass']) || empty($_POST['pass2']) || empty($_POST['email']) || empty($_POST['email2']) || empty($_POST['nome'])) {
$err = "true";
$errore .= "Mancano dei dati";
}
if($_POST['pass'] !== $_POST['pass2'])
$err = "true";
$errore = "Password diverse";
}
if($_POST['email'] !== $_POST['email2'])
$err = "true";
$errore = "email diverse";
}
if( $err == "false") header("Location: altrapagina.php?nome=". $_POST['nome'] . "?pass=" . $_POST['pass'] . "?email=" . $_POST['email'] );
}
echo $errore;
?>
<form action = "<?php echo $_SERVER['PHP_SELF']; ?>" method = "post">
Nome <input name = "nome" /><br />
password <input type = "password" name = "pass" /><br />
conferma password <input type = "password" name = "pass2" /><br />
email <input name = "email" /> <br />
conferma <input name = "email2" /><br />
<input type = "submit" value = "Ok" name = "oki" />
</form>
-
eh c'è un errore nel primo codice che hai postato
Codice PHP:
if( $err == "false") header("Location: altrapagina.php?nome=". $_POST['nome'] . "?pass=" . $_POST['pass'] . "?email=" . $_POST['email'] );
questo andrebbe sostituito con
Codice PHP:
if( $err == "false") header("Location: altrapagina.php?nome=". $_POST['nome'] . "&pass=" . $_POST['pass'] . "&email=" . $_POST['email'] );
altrimenti l'url sarebbe altrapagina.php?nome=nome?pass=pass?email=email
invece deve essere altrapagina.php?nome=nome&pass=pass&email=email
giusto? :lolloso:
-
mi potete ripostare il codice delle tue pagine complete?nn ci ho capito ancora cosa devo accodare ecc :mrgreen:
-
mi da errore della pag. form line 16 :(
-
Scusa per il ritardo... Per quanto riguarda il redirect hai ragione devi mettere & anzichè ?...
Quale è la linea 16?
-
Codice PHP:
$errore = "email diverse";
-
devi mettere una parentesi alla fine della riga 14 ovvero della if che contiene $errore = "email diverse";
Poi fai una altra cosa
sostituisci
$errore = "email diverse";
con
$errore .= "<br />email diverse";
e sostituisci
$errore = "password diverse";
con
$errore .= "<br />password diverse";
fammi sapere
-
asd...potreste ricapitolarmi il codice che devo mettere nella prima pagine e nella seconda pagina mettendo i tag [ php ] :grin: :?:
e poi una cosa...sarebbe possibile inserire 2 caselline checkbox che devono essere per forza sbarrate?basta anche 1...grazie!
-
<?php
if(isset($_POST['okey'])) {
$nome = $_POST['nome'];
$pass = $_POST['pass'];
$email = $_POST['email'];
$testo = "La tua email: $email;\nLa tua password: $pass;\nIl tuo nome: $nome";
$testo .= "Altro testo qui";
mail($email, "Oggetto della email", $testo, "From: tuaemail@qui\n");
header("Location: index.php");
}
echo "Nome: " . $_GET['nome'];
echo "<br />";
echo "Password: " .$_GET['pass'];
echo "<br />";
echo "email: " .$_GET['email'];
?>
<form action = "<?php echo $_SERVER['PHP_SELF'];?>" method = "post">
<input type = "hidden" name = "nome" value = "<?php echo $_GET['nome'];?>" />
<input type = "hidden" name = "email" value = "<?php echo $_GET['email'];?>" />
<input type = "hidden" name = "pass" value = "<?php echo $_GET['pass'];?>" />
<?php
if(isset($_GET['check']))
foreach( $_GET['check'] as $key => $value) { ?>
<input type = "hidden" name = "check" value = "<?php echo $value;?>" />
<?php } ?>
<input type = "submit" value = "conferma" name = "okey" />
</form>
Tutto questo (quello sopra questa riga) va in un file a parte (file di conferma)
Mentre tutto questo (ovvero quello che sta qui sotto) va nel file della form
<?php
$errore = "";
$err = "false";
if(isset($_POST['oki'])) {
if(empty($_POST['pass']) || empty($_POST['pass2']) || empty($_POST['email']) || empty($_POST['email2']) || empty($_POST['nome'])) {
$err = "true";
$errore .= "Mancano dei dati";
}
if($_POST['pass'] !== $_POST['pass2']) {
$err = "true";
$errore .= "<br />Password diverse";
}
if($_POST['email'] !== $_POST['email2']) {
$err = "true";
$errore .= "<br />email diverse";
}
$check = "";
foreach( $_POST['check'] as $key => $value ) $check .= "&check=$value";
if( $err == "false") header("Location: pro.php?nome=". $_POST['nome'] . "&pass=" . $_POST['pass'] . "&email=" . $_POST['email'] . "$check" );
}
echo $errore;
?>
<form action = "<?php echo $_SERVER['PHP_SELF']; ?>" method = "post">
Nome <input name = "nome" /><br />
password <input type = "password" name = "pass" /><br />
conferma password <input type = "password" name = "pass2" /><br />
email <input name = "email" /> <br />
conferma <input name = "email2" /><br />
Primo check<input type = "checkbox" name = "check[]" disabled = "disabled" value = "valore1" />
secondo check<input type = "checkbox" name = "check[]" disabled = "disabled" value = "valore2" />
<input type = "submit" value = "Ok" name = "oki" />
</form>
Per le checkbox che intendi? se sono sbarrate è pure inutile che le processi tanto il valore non verrà modificato. Allora io le ho messe nel primo form e anche nel secondo...
Ok questo funziona l'ho provato
fammi sapere
-
Primo check<input type = "checkbox" name = "check[]" disabled = "disabled" value = "valore1" />
secondo check<input type = "checkbox" name = "check[]" disabled = "disabled" value = "valore2" />
io vorrei che la casella fosse disabilitata xo che sia sbarrata...che cambio?
-
miiiiiiiiiiiiiiii che rompipaaaaaaaaaaaalleeeeee! :))))) scherzo scherzo
checked = "checked" aggiungi questo
<input type = "checkbox" name = "check[]" disabled = "disabled" value = "valore1" checked = "checked" />
così
Ciao