Just nu i M3-nätverket
Gå till innehåll
Theo82

LÖST Selection i php - plus skicka vald option

Rekommendera Poster

Theo82

Hej!

 

Jag har ett formulär jag ska skicka per mail. Formuläret valideras först genom JS och sedan PHP. Har löst JS-sidan med lite hjälp här från forumet och själv fixat allt annat i formuläret i PHP - dock inte select som vill krångla för mig...

 

HTML:

<select id="gender" name="gender">
<option selected="selected">----</option>
<option value="female">Kvinna</option>
<option value="male">Man</option>
</select>

 

I PHP har jag testat allt möjligt för att kontrollera att åtminstone en är vald, bland annat:

if(!empty($_POST['gender'])) {
	$gender = ($_POST['gender']);
}

	else {
	$err1 .= 'Välj kön.'. "\n";
	} 
Säkert ett enkelt svar på detta, men jag hittar inte dit. Tips på vägen? Och hur gör jag för att skicka med vald option som en variabel? Tack så mycket på förhand!

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser
Jonas__B

Är formuläret korrekt i övrigt, med form-tagg och action till sidan som datan skickas till samt method="POST" ?

 

För valideringen - se till att du har value="" för det första valet. Sedan kontrollerar du om värdet är tomt

if(!$_POST['gender'] == "" ){

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser
Theo82

Hej, ja formuläret är korrekt i övrigt, skickas med POST också. Har testat isset (var det första jag gjorde) och även att kontrollera ifall $_POST['gender'] == "none" (d v s satte värdet till förvald option till "none" i html). 

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser
Jonas__B

skicka kod för formuläret och sidan som tar emot så ska vi se

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser
Theo82

Nej, ursäkta. Helt plötsligt fungerar det... med isset... (pinsamt, förlåt). Hade slarvat och fått med ( ! ) framför denna tidigare mest troligt. Då är den biten löst. Hur tar jag ut vald option och skickar den med formuläret?

 

Ber så hemskt mkt om ursäkt för att jag ber om hjälp när jag själv slarvat.

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser
Theo82
Postad (redigerade)
<form method="post" action="confirm.php" accept-charset="UTF-8" >

<label>Namn:<br />
<input type="text" id="fname" name="fname" /></label><br />

<label>E-mail:<br />
<input type="text"id="e_mail" name="e_mail" /></label>

<label>Kön:<br />
<select id="gender" name="gender">
	<option selected="selected">----</option>
	<option value="female">Kvinna</option>
	<option value="male">Man</option>
</select></label><br />

<input type="submit" name="submit" value="Skicka" />
<input type="reset" value="Återställ" />
</form>

och PHP:

<?php
if(isset($_POST['submit'])){

if(isset($_POST['fname']) && !empty($_POST['fname'])) {
	$fname = ($_POST['fname']);
}
	else {
	$err1 = 'Fyll i ditt namn.';
	}

if(isset($_POST['e_mail']) && !empty($_POST['e_mail']) && (!filter_var($_POST['e_mail'], FILTER_VALIDATE_EMAIL) === false )          ) {
	$email = ($_POST['e_mail']);
}

	else {
	$err1 .= 'Fyll i giltig e-mail adress.';
	}	

if(isset($_POST['gender'])) {
	$gender = ($_POST['gender']);
}

	else {
	$err1 .= 'Välj kön.' ;
	}	

}


Redigerad av Theo82

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser
Jonas__B
<select id="gender" name="gender">
	<option selected="selected" value="">----</option>
	<option value="female">Kvinna</option>
	<option value="male">Man</option>
</select>
if(!$_POST['gender']=="") {
	$gender = ($_POST['gender']);
}

else {
	$err1 .= 'Välj kön.' ;
}

Nu borde $gender bara populerad med valt värde.

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Skapa ett nytt konto på vårt forum. Det är lätt!

Registrera ett nytt konto

Logga in

Redan medlem? Logga in här.

Logga in nu



×
×
  • Skapa nytt...