---
title: "Skicka formulärdata till en popup"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/47686-skicka-formulärdata-till-en-popup"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Niklasson"
published: "2002-07-11T09:41:58.000Z"
updated: "2002-07-13T11:43:30.000Z"
replies: 26
views: 693
page: 1
pages: 2
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/47686-skicka-formulärdata-till-en-popup"
---

# Skicka formulärdata till en popup

_Sida 1 av 2._

## #1 — Niklasson, 2002-07-11T09:41Z

*(Kanske skulle passa bättre i Javascript-forumet)* 
Jag skulle vilja göra följande:

Vi leker att det är ett vanligt mailformulär. Besökaren fyller i Namn, e-post och ett meddelande till mig.
När besökaren submittar så vill jag skicka datan till en popup (inget vanligt fönster utan en riktig popup) som utför själva mail()-funktionen. Därefter skall popupen stänga sig själv, den skall alltså bara hantera datan..
Samtidigt skall formulärssidan uppdateras så att besökaren hamnar på en tacksida eller liknande..

Jag vet naturligtvis att det är enklare att göra på vanligt sätt, men jag är ändå nyfiken på att testa detta.  :p 
Är det någon som har nåt liknande på lager?   :q

Permalänk: https://www.webforum.nu/p/47686

## #2 — skyman, 2002-07-11T09:44Z

Du kan ju annars låta tacksidan göra jobbet och skicka upp en popup bara för skojs skull vid submit :)

Permalänk: https://www.webforum.nu/p/719782

## #3 — nkrantz, 2002-07-11T09:52Z

gör så att när formuläret skall skickas anropar ett javascript. Dels så öppnar det popupen, å skickar med de variablerna  som du skall ha i mailet, när ditt phpscript har skickat iväg allt så stänger du enkelt fönstret. I javascriptet så har du också en rad som gör så att formulärsidan ändras till den sidan dit du vill komma.. hänger du mé?

Koden nedan är väl kanske inte så perfekt, orkar inte kolla upp exakt hur man skickat vidar epå bästa sätt.. kolla i javascript forumet om du inte ver själv..

Alltså:
\<script language="Javascript"\>
\<!--
function send()
{
    window.open('mail.php?action=send','sendmail','bla bla bla');
    window.location.href = "nysida.php";
}
// --\>
\</script\>

\<form onSubmit="javascript:send()" action="javascript:void();"\>
\<input type="text" name="to"\>
\</form\>

Permalänk: https://www.webforum.nu/p/719789

## #4 — nkrantz, 2002-07-11T09:53Z

hm.. kanske inte så bra idé kom jag på... du får ju inte in variablerna i popupen juh! Hm.... \*skäms\*

Permalänk: https://www.webforum.nu/p/719790

## #5 — Niklasson, 2002-07-11T09:58Z

hehe, riktigt..  =)

Permalänk: https://www.webforum.nu/p/719793

## #6 — @nders, 2002-07-11T10:01Z

Det borde väl gå att göra någonting sånt här:

```
function send() 
{ 
window.open('','sendmail','bla bla bla'); 
document.formulärnamnet.target='sendmail';
document.formulärnamnet.submit();
location.href='dennyasidansomskaladdashär.php';
}
```

\<form\>-taggen har du som vanligt, och ser till att onsubmit-eventet triggar funktionen.

Mvh,

Permalänk: https://www.webforum.nu/p/719795

## #7 — nkrantz, 2002-07-11T10:01Z

det borde man iofs kunna göra... kanske loopa igenom alla inputrutorna och skapa $\_GET variabler av dem som man sedan skickar med i:
window.open('mail.php?action=send&en=massa&skumma=variabler','sendmail','bla bla bla');

... så att det blir helt dynamiskt uppbyggt... skulle vara coolt.. kolla med JavaScript pöjkarna så hjälper de dig säkert!

Permalänk: https://www.webforum.nu/p/719796

## #8 — nkrantz, 2002-07-11T10:06Z

det blev skumt nu när niklasson ändrade sitt inlägg... hm... ;)

Permalänk: https://www.webforum.nu/p/719802

## #9 — Niklasson, 2002-07-11T10:09Z

sorry nkrantz..  ;)
Får testa lite ikväll och se hur det går..

Permalänk: https://www.webforum.nu/p/719805

## #10 — nkrantz, 2002-07-11T10:10Z

Lycka till! :)

Permalänk: https://www.webforum.nu/p/719807

## #11 — LAMP, 2002-07-11T13:09Z

<http://www.jojoxx.net/faq/faqview.asp?q=47> kanske hjälper?

Permalänk: https://www.webforum.nu/p/719910

## #12 — Niklasson, 2002-07-12T18:26Z

Det löser sig inte. jag blir tokig..  ;)

Permalänk: https://www.webforum.nu/p/720500

## #13 — Matte, 2002-07-12T19:21Z

Jojoxx variant fungerar bra. Testa detta.

**Ditt formulär:** 

```
<script language="JavaScript">
function formPopup(target,properties){
var myWin=window.open("",target,properties);
return true;
}
</script>

<form action="popup.php" method="post" target="foo" 
  onSubmit="return formPopup('foo','width=200,height=200');">
Till:<br>
<input type="text" name="email"><br>
Meddelande:<br>
<textarea name="message"></textarea><br>
<input type="submit">
</form>
```

 

Popupen **popup.php** 

```
<html><head></head>
<body onload="window.opener.location.href='tacksida.html';window.close();">
<?php  
// istället för mailkod
foreach($_POST as $key => $val){
  echo "$key = $val <br>";
}
print str_repeat(" ", 300) . "\n";
flush();
sleep(2);
// Slut istället
?>
</body></html>
```

Permalänk: https://www.webforum.nu/p/720520

## #14 — Niklasson, 2002-07-12T20:16Z

Nu fungerar det bättre, men popupen vägrar stänga förrän scriptet är färdigkört.

Jag vill att popupen skall köra igång scriptet som sedan körs på servern medans webbläsaren/besökaren fortsätter surfa..

Permalänk: https://www.webforum.nu/p/720534

## #15 — Matte, 2002-07-12T20:42Z

Men sån tid brukar det inte inte ta att skicka iväg ett mail. Visserligen brukar jag ha header("Location: ") efter mail(), men det kan väl inte ha någon betydelse (och går i vilket fall inte att göra här).

Prova att ändra popup-php till:

```
<html><head></head>
<body>
<script type="text/javascript">
<!--
  window.opener.location.href='tacksida.html';
// -->
</script>

<?php  
// Mailkod
?>

<script type="text/javascript">
<!--
  window.close();
// -->
</script>

</body></html>
```

Permalänk: https://www.webforum.nu/p/720558

## #16 — Niklasson, 2002-07-13T07:02Z

Grejen är den att jag skall använda det till att skicka nyhetsbrev med. Har ett brev med \> 13500 medlemmar och det tar en stund om jag skall behöva vänta på att webbläsaren tuggar igenom hela scriptet..

Jag använder följande kod också..

```php
ini_set("max_execution_time","9999");
ignore_user_abort(true);
set_time_limit(9999);
```

Permalänk: https://www.webforum.nu/p/720681

## #17 — Nickemannen, 2002-07-13T07:33Z

Jag tror ínte att det går att få ett script att fortsätta köras när du stänger ner sidan. Även om jag inte är insatt i PHP.

Men du kan ju göra så att popupen lägger sig bakom alla
webläsar fönster.

Kommer inte ihåg koden för det men det finns.

Permalänk: https://www.webforum.nu/p/720683

## #18 — Matte, 2002-07-13T09:57Z

Vad händer om man kör ett skript utan output till läsaren ? 

Jag tänker närmast på att posta formuläret till ett skript utan output. Samtidigt i formuläret kör man på onSubmit ett skript som öppnar en popup. I den popupen skickas formulärssidan vidare och popupen stänger sig själv. 
Ungefär som tidigare men vi separerar mailskript och popup.

Har inte provat själv och vet inte hur det går, men i allafall kan det ge en fundering.

Permalänk: https://www.webforum.nu/p/720736

## #19 — Niklasson, 2002-07-13T10:01Z

Nicke: Koden jag postade ovan gör precis det..  ;)

Permalänk: https://www.webforum.nu/p/720737

## #20 — Nickemannen, 2002-07-13T10:44Z

hehe, missade det..
men hmm, gör det något om webbläsaren står och tuggar?
du kan ju förstås göra ett program i VB eller C#/C/C++ för att skicka.

Jag gjorde en nyhetsbrevtjänst.. och då skickade den 20 mail i taget sedan reloadades sidan med info om vilken databasplats den var på också skickade den nästa 20 mail.

men som jag förstår så e du ute efter att starta ett script som sedan går av sig själv utan att du ens behöver ha på din dator?

Permalänk: https://www.webforum.nu/p/720756

---

Tråden på webben: https://www.webforum.nu/amne/php/47686-skicka-formulärdata-till-en-popup  
Nästa sida: https://www.webforum.nu/amne/php/47686-skicka-formulärdata-till-en-popup/page2.md
