SoulGodMedlem sedan aug. 20051 200 inlägg Jag har en funktion nu där jag sparar ner mailadresser in i databasen,
är en anmälan till maillista.
Jag skulle nu vilja ha en popupruta som kommer upp när det är klart med
en vacker text..
Hur?
Jag har följande:
if (isset($_POST['maillist'])) {
$mail = $_POST['mail'];
$laggTill = "INSERT INTO maillist (email) VALUES ('$mail')";
mysql_query($laggTill) or die("Det gick inte att lägga till information!");
}
Men mina försök har varit förgäves..
Finns det något enkelt sätt att göra det?
Har bara hittat typ "stora" varianter med javascript o.s.v,
och jag tänkte att kanske php har någon funktion för det redan??
Mvh
PeddaMedlem sedan juni 20006 032 inlägg Vill du verkligen använda popup? PHP har ingen popup funktion, och popup'er är bara jobbig för användaren.
Men om du tvunget vill använda popup så får du nog använda javascript.
Mitt förslag är att du efter din insert skickar vidare med header.location och där visar ett snyggt meddelande i en div. På det sättet läggs det inte in i databasen igen om man uppdaterar sidan.
SoulGodMedlem sedan aug. 20051 200 inlägg Hm.. istället för en popup .. kanske man kan lägga ett layer som hamnar över sidan bara?
Jag vill på något sätt visa användaren att vi har "godkänt" deras ansökan om nyhetsbrev,
men vill inte göra det via en vanlig textrad.
PeddaMedlem sedan juni 20006 032 inlägg Så här kan det se ut om man använder mitt exempel.
Jag använder mig av tre olika divar med olika ikoner för olika typer av meddelanden.
Röd för felmeddelanden.
Gul för information och
Grön för ok meddelanden.
SoulGodMedlem sedan aug. 20051 200 inlägg Det ger ändå en sida som ger svaret?
Jag kom precis på när jag klickade upp din bild..
Shadowbox / lightbox ( kommer inte ihåg vad den heter )
Kan man ha en sån ? Som en popup typ,
fast alltså, att den visar ett meddelande?
Borde ju vara snyggt om man gör en bild som hoppar upp i en shadowbox..
Frågan är - kan man "kalla" en shadowbox?
Iof kanske fel tråd att skriva här
PeddaMedlem sedan juni 20006 032 inlägg
SoulGod skrev:
Det ger ändå en sida som ger svaret?
Man har ju alltid en sida som visas efter att man postat till databasen och där visas diven.
Går förmodligen att även lösa med ett layer, lightbox mm om man vill.
SoulGodMedlem sedan aug. 20051 200 inlägg Ja, på så sätt ja.. men jag vil inte ha det.. jag vill man ska komma tillbaka till den sidan man var på .. i detta fall index.php där den ligger
PeddaMedlem sedan juni 20006 032 inlägg Lägg diven i index.php då ;)
SoulGodMedlem sedan aug. 20051 200 inlägg Just nu ligger min "kod" för att göra denna tillägg längst upp i filen ( längst upp i index.php )
Kan jag ändå lägga in diven vart jag vill,
och hur gör jag det?
Hur såg din kod ut som du gav som exempel?
PeddaMedlem sedan juni 20006 032 inlägg Här är ett kort exempel.
<?php
if (isset($_POST['maillist'])) {
// taggar bort query för demo
/* $mail = $_POST['mail'];
$laggTill = "INSERT INTO maillist (email) VALUES ('$mail')";
mysql_query($laggTill) or die("Det gick inte att lägga till information!"); */
header("Location: index.php?maillista=ok");
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<style type="text/css">
<!--
.okbox {
border: 1px solid #64790d;
background: #eafc99 url(gfx/okicon.png) no-repeat 15px 5px;
padding: 15px 15px 15px 85px;
margin-bottom: 30px;
}
.okbox h4 {
margin: 0 0 10px 0;
color: #64790d;
}
.okbox p {
margin: 0 0 10px 0;
}
-->
</style></head>
<body>
<?php
if(isset($_GET['maillista']) == 'ok') {
?>
<div class="okbox">
<h4>Registrering OK</h4>
<p>Tack för att du anmält dig till nyhetsbrevet.</p>
</div>
<?php
}
?>
<form id="form1" name="form1" method="post" action="">
<input type="text" name="foo" id="foo" />
<input type="submit" name="maillist" id="maillist" value="Submit" />
</form>
</body>
</html>
SoulGodMedlem sedan aug. 20051 200 inlägg Tackar :) Helt underbart!