Hur gör jag så att header("Location: print.php") kommer som en popup?

Permalänk
Medlem

Hur gör jag så att header("Location: print.php") kommer som en popup?

Här igen med ett nytt problem! (har försökt googla)
Som rubriken säger har jag en print sida som man kommer till om man trycker på submitknappen som heter print. Formuläret har som action att komma till samma sida som man befinner sig på, där sparas all data från formuläret. Sedan beroende på vilken knapp man tryckt på vidarebefodras man till en annan sida.

När man har tryckt på print så submittas formuläret, om print är isset så kommer header("Location: print.php").

if(isset($_POST['print'])) { $_SESSION['print'] = $hiddenId; header("Location: print.php"); exit(); }

Men jag vill att denna print sida ska komma som en popup! Hur gör jag? Target blank hade man ju kunnat använda om det var en länk, men hur gör jag nu?

Jag vill alltså att man ska stanna på formuläret, och print sidan ska komma som en popup.

Tack som vanligt på förhand!

Permalänk
Medlem

Det går inte, du måste använda javascript eller något liknande (vilket jag verkligen inte rekommenderar då det inte går att göra på ett sätt som degraderar vettigt när besökaren inte har JS).

Permalänk
Medlem

Du kan ju lägga target="_blank" i form-taggen för ditt formulär, så får du den nya sidan i ett nytt fönster.

Permalänk
Medlem

Form med JS "onLoad event" som "submit"-ar formen.

<body onLoad="document.forms[0].submit()"> <form name="form" action="http://dinlänkhär" target="_blank"> <input type="submit" value="submit"> </form> </body>

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av jesper96
Form med JS "onLoad event" som "submit"-ar formen.

<body onLoad="document.forms[0].submit()"> <form name="form" action="http://dinlänkhär" target="_blank"> <input type="submit" value="submit"> </form> </body>

Och vad hade detta med tråden att göra?

Permalänk
Medlem

han ville ha så de öppnades i nytt fönster/popup elr nåt sånt?, det går inte att göra i php, men där är js/html för att använda en form som det?

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av jesper96
han ville ha så de öppnades i nytt fönster/popup elr nåt sånt?, det går inte att göra i php, men där är js/html för att använda en form som det?

Men att submitta formuläret i ett onload-event är knappast vad TS vill göra; och jag skulle nog vilja säga att det är något ingen någonsin borde vilja göra.

Edit: Vad man skulle kunna göra är att när formuläret submittas kolla om print-knappen är den som tryckts på, och sätta target="_blank" på formuläret innan det skickas. Det bör teoretiskt sett fungera. Pseudo-pseduo-kod:

<form ... onsubmit="if([någon tryckte på print]){ this.target = "_blank"; } return true;">

Så länge onsubmit returnerar true så bör formuläret skickas normalt efter det att skriptet körs.