webForumDet fria alternativet
Logga in / Bli medlem

Problem med radiokappar och select

PHP

0 svar · 144 visningar · startad av kicki_an

Medlem sedan jan. 200556 inlägg
Trådstart#1

Jag har gjort ett formulär ur vilket man ska kunna välja och lista information.
Man kan mha radioknappar välja att lista alla erbjudanden, aktuella erbjudanden eller gamla erbjudanden. Beroende på valet av radioknapparna så ändras en select med möjliga val.

Detta fungerar hyggligt. Ett problem är att jag skulle vilja att vid varje nytt val med radioknapparna, gör att selecten nollställs, dvs att inget val är valt. Nu ligger det senast valda kvar, OM det alternativet även finns för den radioknappen. Om det inte gör det, så fungerar det bra.

Sen har jag också problemet att den senast valda informationen ligger kvar och visas i <iframe> även om det alternativet egentligen inte ska kunna visas eftersom det inte finns med i selecten.

Hoppas på snabb hjälp!

<?
//Nollställer radioknapparna
$check1="";
$check2="";
$check3="";
$select="";

//Kollar dagen datum ÅÅMMDD 
$date = getdate();
$actual_year = $date['year'];
$actual_year = substr($actual_year, 2, 2);
$actual_month = $date['mon'];
if(strlen($actual_month)==1)
{
	$actual_month = "0" . $actual_month;
}
$actual_day = $date['mday'];
if(strlen($actual_day)==1)
{
	$actual_day = "0" . $actual_day;
}
$actual_date = "$actual_year" . "$actual_month" . "$actual_day";
// Datum koll klar

//Läser in radioknappar
$in_offer = $_GET['offer'];

//Sätter itryckt radioknapp till "checked"
if($in_offer=="aktuella")
{
	$check2="checked";
	$select="selected";
}
elseif($in_offer=="gamla")
{
	$check3="checked";
	$select="selected";
}
else
{
	$check1="checked";
	$in_offer="alla";
	$select="selected";
}
//Läser in valt erbjudande
if($_GET['id'] != "---Välj erbjudande---")
{
	$get_id = $_GET['id'];
}
else
{	
 	$get_id = "";
} 
print "Radio: $in_offer <br>";
print "get_id: $get_id <br>";
print "id $id <br>";

?> 
<br/>
<form name="form1" method="get" action="">

<b>Visa erbjudanden:</b><br>
Alla <input type="radio" name="offer" value="alla" <? echo $check1 ?> onclick="javascript:this.form.submit();">
Aktuella <input type="radio" name="offer" value="aktuella" <? echo $check2 ?> onclick="javascript:this.form.submit();">
Gamla <input type="radio" name="offer" value="gamla" <? echo $check3 ?> onclick="javascript:this.form.submit();">
 

<select name="id" onchange="javascript:this.form.submit();" style="width:'180';">

   <option value="" <? echo $select ?> >---Välj erbjudande---</option>
   <?
	if($in_offer=="alla" or $in_offer=="")
	{	
		$id="";
		$query_result = mysql_query("SELECT * FROM erbjudanden GROUP BY id") OR die ("Error: " . mysql_error());
		while ($result_row = mysql_fetch_array($query_result)) 
		{
			$id = $result_row['id'];
			$namn = $result_row['namn'];
			if($id == $get_id)
			{
				echo "<option value='" . $id . "' selected>" . $namn . " </option>"; 
			}
			else
			{
				echo "<option value='" . $id . "'>" . $namn . " </option>"; 
			}
		} 
	}
	elseif($in_offer=="aktuella")
	{
		$id="";
		$query_result = mysql_query("SELECT * FROM erbjudanden GROUP BY id") OR die ("Error: " . mysql_error());
		while ($result_row = mysql_fetch_array($query_result)) 
		{
			$id = $result_row['id'];
			$namn = $result_row['namn'];
			$in_from = $result_row['efrom'];
			$in_tom = $result_row['etom'];
			if(($in_from <= $actual_date) and ($actual_date <= $in_tom))
			{
				if($id == $get_id)
				{
					echo "<option value='" . $id . "' selected>" . $namn . " </option>"; 
				}
				else
				{
					echo "<option value='" . $id . "'>" . $namn . " </option>"; 
				}
			}
		} 
	}
	elseif($in_offer=="gamla")
	{
		$id="";
		$query_result = mysql_query("SELECT * FROM erbjudanden GROUP BY id") OR die ("Error: " . mysql_error());
		while ($result_row = mysql_fetch_array($query_result)) 
		{
			$id = $result_row['id'];
			$namn = $result_row['namn'];
			$in_from = $result_row['efrom'];
			$in_tom = $result_row['etom'];
			if(($in_from < $actual_date) and ($in_tom < $actual_date))
			{
				if($id == $get_id)
				{
					echo "<option value='" . $id . "' selected>" . $namn . " </option>"; 
				}
				else
				{
					echo "<option value='" . $id . "'>" . $namn . " </option>"; 
				}
			}
		} 
	}	
	?>
   	</select>  
</form>
<?	
	if($get_id!="")
	{
		print "<strong> ID: $get_id </strong> <br/>";
	}
?>
<p>

  <IFRAME SRC="http://dev.bigtravel.se/content/travel/offers/visa_erbjudande.php?id= <? echo $get_id ?> " WIDTH="550" HEIGHT="90%" NAME="main" scrolling="AUTO"> 

  <!-- Alternate content for non-supporting browsers -->

  </IFRAME> 

</p>
391 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
130 ms — deklarationer (db)
128 ms — hämta statistik (db)
130 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)