webForumDet fria alternativet

header location problem

5 svar · 264 visningar · startad av henkeny

henkenyMedlem sedan maj 200152 inlägg
#1

Tjena!

Har ett litet problem här.

Har ett formulär som innehåller en select lista. När man väljer ett alternativ ska den skicka vidare användaren till en annan sida, och även skicka med en variabel.

Koden ser ut så här:
------------------------------------------------------------------

<form name="snabbval">

<select name="restauranger" onChange="<? header("Location: $restur_pres.php?idnr=$uid "); ?>">

<option value="">Snabbval Restaurang</option>
<?
while ( $row = mysql_fetch_array($result) )
{
$uid = $row['id'];
$restname = $row['restname'];
$visaURL = "restur_pres.php?idnr=$uid";
?>
<option value="<?print $visaURL?>"><? print $restname ?></option>
<?
}
?>
</select>

</form>
<?
mysql_close ($conn);
?>

-------------------------------------------------------------------------
Får det gamla vanliga felet att :
Cannot add header information - headers already sent by (output started at /home/u1143/web/main.php:5)

Har även provat att använda

ob_start(); före raden som använder header och,
ob_end_flush(); efter raden.......men det funkar ändå inte

vore jättetacksam om nån hade en smidig lösning på detta problem.

Jag ska alltså skicka vidare användaren till sidan restu_pres.php och skicka med idnr.

Kan tillägga att när jag kollar på "visa källa" så skriver den iaf ut idnr för alla poster i select listan....problemet ligger nog i header grejen eller????

Tacksam för svar!!

/Henke

SPiNMedlem sedan mars 20005 832 inlägg
#2

Du kan inte använda PHP på det sättet, eftersom att PHP-koden körs på servern - alltså innan all HTML läses av webläsaren. Du får använda JavaScript till det du vill åstadkomma.

henkenyMedlem sedan maj 200152 inlägg
#3

okej förstår!

någon tips på hur jag ska använda det, för att få det så smidigt som möjligt?

tack på förhan

/henke

SPiNMedlem sedan mars 20005 832 inlägg
#4

Självklart. :)

<form name="snabbval">

<select name="restauranger" onChange="document.location=this[this.selectedIndex].value;">

<option value="">Snabbval Restaurang</option>
<?
while ( $row = mysql_fetch_array($result) )
{
$uid = $row['id'];
$restname = $row['restname'];
$visaURL = "restur_pres.php?idnr=$uid";
?>
<option value="<?print $visaURL?>"><? print $restname ?></option>
<?
}

mysql_close( $conn );
?>
</select>

</form>
henkenyMedlem sedan maj 200152 inlägg
#5

Tackar och bockar!!

var ett litet fel i din kod :e med länken, men det kunde jag fixa själv iaf :e

nu funkar det perfekt......tack ännu en gång!!

:birp

SPiNMedlem sedan mars 20005 832 inlägg
#6

De nada, som man säger i Spanien. Jag såg nu felet och rättade till det. ;)

Genererad på 383 ms · cache AV · v20260730165559-full.f96bc7eb