- Home
- Categorie
- Coding e Sistemistica
- PHP
- problema invio form ad un indirizzo email
-
Form html (parte dell'input radio):
<input type="radio" value="si" checked name="1">Si
<input type="radio" value="no" name="0">NoPagina php:
<?
//Ricevo i dati dai campi radio
$si=$_POST['1'];
$no=$_POST['0'];
//Con un if di controllo dico quale hai selezionato
if($si == "si"){
echo"Selezionato Si";
}
else{
echo"Selezionato No";
}?>
Dovrebbe andare.
-
grande si ma... vorrei inserire il codice nella funzione if all'inizio... ovvero inserire questa funzione if
if($si == "si"){ echo"Selezionato Si"; } else{ echo"Selezionato No"; ```nella funzione di logica condizionale iniziale...
//VALIDAZIONE
if (empty($responsabile) || empty($avtAddress) || empty($recapitoCellulare) || empty($avtAddressNumber) || empty($email))
{echo $empty_fields_message;
}
elseif(!ereg("^[_a-z0-9-]+(.[_a-z0-9-]+)@[a-z0-9-]+(.[a-z0-9-]+)(.[a-z]{2,3})$", $email)) {
echo "<h3>L'email non è stata inviata</h3><p>L'indirizzo email non è valido</p>";
}elseif(is_numeric($eta)) {
echo "devi inserire un numero";
}else {
mail("$miaemail", $subject, $forminfo, "From:$email");echo $thankyou_message;
}
-
Puoi inserirla sotto //VALIDAZIONE l'importante è che in testata metti la ricezione delle variabili cioè $si=$_POST['1']; ecc...
-
si esatto ma io vorrei che fosse messo nella condizione in cui se premo no la mail non viene inviata attraverso la funzione di prima
if (empty($responsabile) || empty($avtAddress) || empty($recapitoCellulare) || empty($avtAddressNumber) || empty($email)) { echo $empty_fields_message; }
altrimenti se metto si la mail viene inviata attraverso la funzione di prima
else { mail("$miaemail", "$subject", $forminfo, "From:$email"); echo $thankyou_message; }
-
Io darei un semplice die() o adirittura un exit(),ma se vuoi puoi mandare una varabile con stato logico 0 se fallisce e 1 se è positivo.
Cioè
$result_scelta=""; //Viene dichiarata dall'if dei campi radio,o 0 o 1.
Quindi puoi trasformare l'else in un elseif.
elseif($result_scelta == "1") {
mail("$miaemail", "$subject", $forminfo, "From:$email");echo $thankyou_message;
}
-
posso chiederti l'ultimo favore?
potresti scrivermelo nel codice che ho già fatto perchè non riesco a farlo funzionare :bho:
-
if($si == "si"){
echo"Selezionato Si";
$result_scelta="1";
}
else{
echo"Selezionato No";
$result_scelta="0";
}//segue l'if con l'elseif
if (empty($responsabile) || empty($avtAddress) || empty($recapitoCellulare) || empty($avtAddressNumber) || empty($email))
{echo $empty_fields_message;
}
elseif($result_scelta == "1") {
mail("$miaemail", "$subject", $forminfo, "From:$email"); echo $thankyou_message;
}
-
wow svacant grazie ancora davvero ma ho ancora problemini...
se metto no non invia la mail e fa uscire il messaggio, ma lo stesso se metto si non invia la mail e fa uscire lo stesso messaggio...
probabilmente ho problemi nei form, ti riposto il codice dei form:<TD><INPUT name="privacy" type="radio" class="Radio" value="Si" CHECKED></TD> <TD class="SmallText">No</TD> <TD><INPUT name="privacy" type="radio" class="Radio" value="No"></TD>
altrimenti li ho qui in questa parte del file php:
$si=$_POST['1']; $no=$_POST['0'];
secondo me sono i form sbagliati ma se li metto come me li hai postati te vengono checkati tutti e due all'inizio...
-
Prova così.
<TD><INPUT name="1" type="radio" class="Radio" value="si" CHECKED></TD>
<TD class="SmallText">No</TD>
<TD><INPUT name="0" type="radio" class="Radio" value="no"></TD>Così possono essere selezionati tutti e due quindi risolviam così.
Parte del form:
<TD><INPUT name="privacy" type="radio" class="Radio" value="si" CHECKED></TD>
<TD class="SmallText">No</TD>
<TD><INPUT name="privacy" type="radio" class="Radio" value="no"></TD>Parte php
$privacy=$_POST['privacy'];
echo"Hai selezionato $privacy"
-
si ok ora la funzione php va ma i radio button si selezionano entrambi se cliccko no.. insomma rimangono selezionati sia si che no...
uff!!!!!!