Avatar billede maddoggy Nybegynder
09. maj 2007 - 23:54 Der er 35 kommentarer og
1 løsning

et script der gør det muligt at vælge 2 ting

Hejsa

En ide som jeg ikke selv kan udføre da jeg ikke kender til javascripts, og går udfra at det skal lave i det.

Jeg har en form mail hvor jeg godt kunne tænke mig at det var muligt for indtaster at vælge 2 gange indtastning.

Feks. Forældre navn -> gøre dette muligt at indtaste mor's & far's navn

Barn / børns navn -> mulighed for at indtaste 4 navne

mail adresse -> 2 muligheder

osv.

Det jeg havde tænkt på var at lave det som en radio button el, drop down.

Håber der en en flere som har nogle ideer til hvordan el. hvor jeg evt. kan læse noget om dette.

På forhånd tak.
Avatar billede maddoggy Nybegynder
09. maj 2007 - 23:56 #1
selv form indtastningen er på en html side og bliver håndteret via PHP, selve mail delen fungere som den skal, den afsender en mail til indtaster samt en til mig.

Bare lige til info hvis det vil hjælpe noget
Avatar billede roenving Novice
10. maj 2007 - 01:17 #2
Der er vel intet galt i at tilføje flere til reciever-feltet, men uden at vise den del af din form er det lidt for svært at svare !-)
Avatar billede maddoggy Nybegynder
10. maj 2007 - 21:09 #3
klart... den er her...

<html>

<head>
<title>Tilmelding Minisport</title>
<style>
BODY{color:#000000; font-size: 8pt; font-family: Verdana}
.button {background-color: rgb(128,128,128); color:#ffffff; font-size: 8pt;}
.inputc {font-size: 8pt;}
</style>
</head>

<body>

<form name="minisport" action="contact_bruges.php" method="post">
  <div align="center"><center><table bgcolor="#F2F2F2" width="528" cellspacing="6">
    <tr>
      <td width="159"></td>
      <td width="349"><strong>Tilmelding til Minisport</strong></td>
    </tr>
    <tr>
      <td align="right" width="159"><small>Forældre Navn:</small></td>
      <td width="349"><font face="Arial"><input class="inputc" size="29" name="name"></font></td>
    </tr>
    <tr>
      <td align="right" width="159"><small>Barnets Navn:</small></td>
      <td width="349"><font face="Arial"><input class="inputc" size="29" name="barn"></font></td>
    </tr>
    <tr>
      <td align="right" width="159"><small>Adresse:</small></td>
      <td width="349"><font face="Arial"><input class="inputc" size="29" name="adresse"></font></td>
    </tr>
    <tr>
      <td align="right" width="159"><small>Post nummer:</small></td>
      <td width="349"><font face="Arial"><input class="inputc" size="29" name="pnr"></font></td>
    </tr>
    <tr>
      <td align="right" width="159"><small>By:</small></td>
      <td width="349"><font face="Arial"><input class="inputc" size="29" name="by"></font></td>
    </tr>
    <tr>
      <td align="right" width="159"><small>Telefon nr.:</small></td>
      <td width="349"><font face="Arial"><input class="inputc" size="29" name="tnr"></font></td>
    </tr>
    <tr>
      <td align="right" width="159"><font color="#000080" size="1"></font><small> Din E-mail:</small></td>
      <td align="left" width="349"><font face="Arial"><input class="inputc" size="29"
      name="email"></font></td>
    </tr>
    <tr align="middle">
      <td align="right" width="159"><font color="#000080" size="1"></font><small> Gentag E-mail:</small></td>
      <td width="349" align="left"><font face="Arial"><input class="inputc" size="29"
      name="email2"></font></td>
    </tr>
    <tr>
      <td width="159"></td>
      <td width="349"><script language="JavaScript"><!--
function validateForm()
{
var okSoFar=true
with (document.minisport)
{
  var foundAt = email.value.indexOf("@",0)
  if (foundAt < 1 && okSoFar)
  {
    okSoFar = false
    alert ("Vær venlig at indtaste en Email adresse der er gyldig.")
    email.focus()
  }
  var e1 = email.value
  var e2 = email2.value
  if (!(e1==e2) && okSoFar)
  {
    okSoFar = false
    alert ("Email adresserne du har tastet er ikke ens.  Vær venlig at rette det.")
    email.focus()
  }
 
  if (name.value=="" && okSoFar)
  {
    okSoFar=false
    alert("Skriv venligst dit navn.")
    name.focus()
  }
 
  if (barn.value=="" && okSoFar)
  {
    okSoFar=false
    alert("Skriv venligst dit barns navn.")
    barn.focus()
  }
 
  if (adresse.value=="" && okSoFar)
  {
    okSoFar=false
    alert("Skriv venligst din adresse.")
    adresse.focus()
  }
 
  if (pnr.value=="" && okSoFar)
  {
    okSoFar=false
    alert("Skriv venligst dit postnummer.")
    pnr.focus()
  }
 
  if (by.value=="" && okSoFar)
  {
    okSoFar=false
    alert("Skriv venligst by navnet.")
    by.focus()
  }
 
  if (tnr.value=="" && okSoFar)
  {
    okSoFar=false
    alert("Skriv venligst dit telefon nummer.")
    tnr.focus()
  }
  if (okSoFar==true)  submit();
}
}
// --></script><input type="button" class="button"
      value="Send" name="B1" ONCLICK="java script:validateForm()"><small> <small>Alle felter skal udfyldes</small></small></td>
    </tr>
  </table>
  </center></div>
</form>
</body>
</html>
Avatar billede roenving Novice
10. maj 2007 - 23:22 #4
Hrm, grundskabelonen er jo lavet for 10 år siden ,-(

-- det skal i 3 forskellige dimensioner skrives om forfra, hvis koden skal være bare nogenlunde nutidig ...

-- og så skal der så tilføjes dine ønskede funktionaliteter ...

Det, du ønsker er, at:

Standard er,

-- at der er et forældre-navne-felt, men der skal være mulighed for 2

-- et børne-navne-felt, men mulighed for op til 4

-- et mail-felt med gentagelse, men mulighed for at angive 2 med gentagelse ?-)
Avatar billede maddoggy Nybegynder
11. maj 2007 - 00:03 #5
hehe, ja det skal nok passe med de 10 år... har fundet lidt her og der,  og rettet til efter bedste evne :-)

puhhh det lyder ikke rart med at det skal ligges i 3 dimensioner, håber det er noget en totalt amatør som jeg, kan finde ud af... kan jeg få dig til at beskrive hvordan du mener?

ja, det er de ting som jeg godt kunne tænke mig som valg muligheder.
Avatar billede roenving Novice
11. maj 2007 - 00:42 #6
De tre dimensioner går på, at koden fra tre forskellige synsvinkler er forældet og ikke virker fuldt efter hensigten i moderne browsere, og slet ikke vil virke i morgendagens:

-- html-mark-up'en benytter måder at gøre ting på, som blev deprecated, da html4 blev lanceret i 1998 ...

-- din styling af elementer benytter sig mest af html3.2-metoder (1998 var året, hvor html4 og 4.01 kom !-)

-- og dokumentet er faktisk ikke et html-dokument efter de standarder, man bruger i dag, da det ikke indeholder en oplysning om, hvordan browseren skal fortolke 'lortet', det kræver nemlig en doctype ...

-- og så er sciptet, du bruger til validering et resultat af, hvilke metoder, der var til rådighed i de allerførste versioner af javascript, jeg tror det var i 1997, at js1.2 kom, så det kunne gøres meget mere direkte !o]

-- hrm, det blev vist 4 ...

-- nå, jeg er gået igang, og er vist ved at have klaret de tre første punkter, hvorefter kun scriptet og dine tilpasninger resterer !-)
Avatar billede roenving Novice
11. maj 2007 - 02:37 #7
'kun'
Avatar billede roenving Novice
11. maj 2007 - 03:13 #8
Så skulle den være der, men der mangler sikkert en detalje eller to !-)

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>

<head>
<title>Tilmelding Minisport</title>
<style>
html,body{color:#000; font-size: 10px; font-family: verdana,sans-serif;}
#mainForm{width:428px;margin:0 auto;}
#mainForm form, #mainForm table{width:528px;border:0;border-collapse:collapse;backgound;#f2f2f2;}
#mainForm form .td1{width:159px;margin:2px;border:0;text-align:right;}
#mainForm form .td2{width:249px;margin:2px;border:0;}
.dontShow{display:none;}
.button {background-color: #777; color:#fff; /*font-size: 8px;*/}
/*.inputc {font-size: 8px;}*/
</style>
<script typee="text/javascript">
var ua = navigator.userAgent.toLowerCase();
var trDisplay = (ua.indexOf("msie") > 0 && ua.indexOf("opera") == -1) ? 'block' : 'table-row';
function showHideParentRow(elm){
  document.getElementById(elm.value).style.display = elm.checked ? trDisplay : "none";
  parentNames += elm.checked ? 1 : -1;
}
function showHideChildRow(elm){
  var numChilds = +elm.value.replace(/^.*?(\d)$/,"$1");
  if(numChilds != childNames + (elm.checked ? 1 : 0)){
    elm.checked = !elm.checked;
    return;
  }
  document.getElementById(elm.value).style.display = elm.checked ? trDisplay : "none";
  childNames += elm.checked ? 1 : -1;
}
function showHideMailRows(elm){
  document.getElementById(elm.value).style.display = elm.checked ? trDisplay : "none";
  document.getElementById(elm.value + "x").style.display = elm.checked ? trDisplay : "none";
  mailAddresses += elm.checked ? 1 : -1;
}
var parentNames = 1;
var childNames = 1;
var mailAddresses = 1;
function valider(f){
  if(f.name1.value == ""){
    alert("Udfyld venligst forældre navn");
    f.name1.focus();
    return false;
  }
  if(f.name2.value == "" && parentNames == 2){
    alert("Udfyld venligst forældre navn");
    f.name2.focus();
    return false;
  }
  if(f.barn1.value == ""){
    alert("Udfyld venligst barnets navn");
    f.barn1.focus();
    return false;
  }
  if(f.barn2.value == "" && childNames >= 2){
    alert("Udfyld venligst barnets navn");
    f.barn2.focus();
    return false;
  }
  if(f.barn3.value == "" && childNames >= 3){
    alert("Udfyld venligst barnets navn");
    f.barn3.focus();
    return false;
  }
  if(f.barn4.value == "" && childNames == 4){
    alert("Udfyld venligst barnets navn");
    f.barn4.focus();
    return false;
  }
  if(f.adresse.value == ""){
    alert("Udfyld venligst adressen");
    f.adresse.focus();
    return false;
  }
  if(!f.pnr.value.match(/^\d{4}$/)){
    alert("Udfyld venligst postnummer med 4 cifre");
    f.pnr.focus();
    return false;
  }
  if(f.by.value == ""){
    alert("Udfyld venligst by");
    f.by.focus();
    return false;
  }
  if(!f.tnr.value.match(/^\d{8}$/)){
    alert("Udfyld venligst telefonnummer med 8 cifre");
    f.tnr.focus();
    return false;
  }
  if(!f.email1.value.match(/^.*@\w[\w.-]*\.[a-z]{2,6}$/) ||  f.email1.value != f.email1x.value){
    alert("Udfyld venligst med en gyldig og ens mail-adresse");
    f.email1.focus();
    return false;
  }
  if(mailAddresses == 2 && (!f.email2.value.match(/^.*@\w[\w.-]*\.[a-z]{2,6}$/) ||  f.email2.value != f.email2x.value)){
    alert("Udfyld venligst med en gyldig og ens mail-adresse");
    f.email2.focus();
    return false;
  }
  return true;

}
</script>
</head>

<body>
<div id="mainForm">
<form name="minisport" action="contact_bruges.php" method="post" onsubmit="return valider(this);">
  <table>
    <tr>
      <td colspan="2" style="font-weight:bold;text-align:center;"><div style="font-style:italic;float:right;">Flere&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div>Tilmelding til Minisport</td>
    </tr>
    <tr>
      <td class="td1">Forældre Navn:</td>
      <td class="td2"><input class="inputc" size="29" name="name1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      <input type="checkbox" value="parent2" name="parentNames[1]" onclick="showHideParentRow(this,'parent');"></td>
    </tr>
    <tr id="parent2" style="display:none;">
      <td class="td1">Forældre2 Navn:</td>
      <td class="td2"><input class="inputc" size="29" name="name2">
      <input type="checkbox" style="visibility:hidden;"></td>
    </tr>
    <tr>
      <td class="td1">Barnets Navn:</td>
      <td class="td2"><input class="inputc" size="29" name="barn1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      <input type="checkbox" value="child2" name="childNames[1]" onclick="showHideChildRow(this);"></td>
    </tr>
    <tr id="child2" style="display:none;">
      <td class="td1">Barn 2s Navn:</td>
      <td class="td2"><input class="inputc" size="29" name="barn2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      <input type="checkbox" value="child3" name="childNames[2]" onclick="showHideChildRow(this);"></td>
    </tr>
    <tr id="child3" style="display:none;">
      <td class="td1">Barn 3s Navn:</td>
      <td class="td2"><input class="inputc" size="29" name="barn3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      <input type="checkbox" value="child4" name="childNames[3]" onclick="showHideChildRow(this);"></td>
    </tr>
    <tr id="child4" style="display:none;">
      <td class="td1">Barn 4s Navn:</td>
      <td class="td2"><input class="inputc" size="29" name="barn4">
      <input type="checkbox" style="visibility:hidden;"></td>
    </tr>
    <tr>
      <td class="td1">Adresse:</td>
      <td class="td2"><input class="inputc" size="29" name="adresse"></td>
    </tr>
    <tr>
      <td class="td1">Post nummer:</td>
      <td class="td2"><input class="inputc" size="29" name="pnr"></td>
    </tr>
    <tr>
      <td class="td1">By:</td>
      <td class="td2"><input class="inputc" size="29" name="by"></td>
    </tr>
    <tr>
      <td class="td1">Telefon nr.:</td>
      <td class="td2"><input class="inputc" size="29" name="tnr"></td>
    </tr>
    <tr>
      <td class="td1">Din E-mail:</td>
      <td class="td2"><input class="inputc" size="29" name="email1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      <input type="checkbox" value="mail2" name="mailAddresses[2]" onclick="showHideMailRows(this);"></td>
    </tr>
    <tr>
      <td class="td1">Gentag E-mail:</td>
      <td class="td2"><input class="inputc" size="29" name="email1x">
      <input type="checkbox" style="visibility:hidden;"></td>
    </tr>
    <tr id="mail2" style="display:none;">
      <td class="td1">Den 2. E-mail:</td>
      <td class="td2"><input class="inputc" size="29" name="email2">
      <input type="checkbox" style="visibility:hidden;"></td>
    </tr>
    <tr id="mail2x" style="display:none;">
      <td class="td1">Gentag 2. E-mail:</td>
      <td class="td2"><input class="inputc" size="29" name="email2x">
      <input type="checkbox" style="visibility:hidden;"></td>
    </tr>
    <tr>
      <td class="td1">&nbsp;</td>
      <td class="td2"><input type="submit" class="button" value="Send" name="B1"> Alle felter skal udfyldes</td>
    </tr>
  </table>

</form>
</div>
</body>
</html>
Avatar billede roenving Novice
11. maj 2007 - 03:22 #9
Argh, det hedder:

<script type="text/javascript">


-- ret den lige (den står lige midt i det hele under style-tingene, ellers vil det sikkert kun virke i IE !-)

-- og tabindex har jeg ikke kigget på, men det kan være, at det vil være opportunt at kigge på det !o]
Avatar billede roenving Novice
11. maj 2007 - 03:26 #10
Njah, både Opera og FireFox accepterede den tavetosse, men der er jo også andre browsere !-)

-- til gengæld skal man ikke reloade i FireFox, hvis man har afkrydset nogle checkboxe, for så kan man nok ikke sende formularen, men henter man den påny er der ingen problemer ...
Avatar billede maddoggy Nybegynder
11. maj 2007 - 12:51 #11
Hold da k... det var hurtigt, tjekker det i aften

Du skal ha' mange tak for det...
Avatar billede maddoggy Nybegynder
11. maj 2007 - 12:52 #12
arbejder du med det til dagligt? el. er det bare fritids sjov?
Avatar billede roenving Novice
11. maj 2007 - 13:33 #13
Ikke for tiden, der er det bare for at have noget fornuftigt at holde min viden vedlige med !-)

-- hvis det havde været arbejde, ville jeg have estimeret opgaven til en time, så jeg også kunne nå ned og købe smøger, på toilettet og chit-chatte ved kaffemaskinen indenfor tiden !o]

-- men der var _meget_ 'pille forkerte ting fra hinanden' og erstatte det med nutidig kode !-)
Avatar billede maddoggy Nybegynder
11. maj 2007 - 22:05 #14
Det er jo en fornuftig ting... LoL altså effektiv arbejde på små 25 min! :-)

Ja, kan godt se at det ser noget anderledes ud end det jeg havde...
Avatar billede maddoggy Nybegynder
11. maj 2007 - 22:10 #15
der er et enkelt problem, det er at den ikke vil gå videre med at sende mail, men ryder bare formen uden at sende, har tjekket i IE7 samt Firefox det samme sker.

Er det pga at jeg har defineret $ forkert i forhold til den nye måde i .html filen?

mit PHP scrips.

<?php
/* Minisport tilmelding's Formular */

//---------Disse skal ændres til dit setup-------------------------------------------------------
$valid_ref1="http://192.168.1.3/contact_bruges.html";// Ændre til dit domæne (www.xxxxx.dk)
$valid_ref2="http://192.168.1.3/contact_bruges.html";// Ændre til dit domæne (www.xxxxx.dk)
$replyemail="xxx@xx.dk";//Ændres til din mail adresse el. domæne mail
//-----------------------------------------------------------------------------------------------

//clean input in case of header injection attempts!
function clean_input_4email($value, $check_all_patterns = true)
{
$patterns[0] = '/content-type:/';
$patterns[1] = '/to:/';
$patterns[2] = '/cc:/';
$patterns[3] = '/bcc:/';
if ($check_all_patterns)
{
  $patterns[4] = '/\r/';
  $patterns[5] = '/\n/';
  $patterns[6] = '/%0a/';
  $patterns[7] = '/%0d/';
}
//NOTE: can use str_ireplace as this is case insensitive but only available on PHP version 5.0.
return preg_replace($patterns, "", strtolower($value));
}
//Variabler er defineret
$name1 = clean_input_4email($_POST["name1"]);
$name2 = clean_input_4email($_POST["name2"]);
$barn1 = clean_input_4email($_POST["barn1"]);
$barn2 = clean_input_4email($_POST["barn2"]);
$barn3 = clean_input_4email($_POST["barn3"]);
$barn4 = clean_input_4email($_POST["barn4"]);
$adresse = clean_input_4email($_POST["adresse"]);
$pnr = clean_input_4email($_POST["pnr"]);
$by = clean_input_4email($_POST["by"]);
$tnr= clean_input_4email($_POST["tnr"]);
$email1 = clean_input_4email($_POST["email1"]);
$email2 = clean_input_4email($_POST["email2"]);
$themessage = clean_input_4email($_POST["themessage"], false);

//Fejl besked
$error_msg='Fejl - Din tilmelding er ikke gået godt, tjek om noget står forkert. Prøv igen. hvis det bliver ved med at fejle kontakt da T C på telefon nummer 86xxxxxx eller email xxx@xx.dk';

//Mail afsendt uden fejl
$success_sent_msg='<p align="center"><strong>&nbsp;</strong></p>
                  <p align="center"><strong>Din tilmelding er afsendt<br>
                  </strong> vi takker for tilmeldingen.</p>
                  <p align="center">En bekræftigelse er afsendt til dig.</p>
                  <p align="center">Vi ses i hallen når sæsonen starter.</p>';

//definere hvad der er indtastet i formularen og gør den klar til at blive sendt i mail
$info = "$name1 \n$name2 \n$barn1 \n$barn2 \n$barn3 \n$barn4 \n$adresse \n$pnr \n$by \n$tnr \n$email1 \n$email2 \n";

$replymessage = "Hej $name1 & $name2

Tak for din tilmelding til Minisport.

Du vil modtage en mail Ca. 3 uger før sæsonen går igang,
med oplysninger om betaling af kontingent, samt det endelige programmet,
medsendes som en PDF fil, selve programmet vil også være at finde på hjemmesiden.

Program for de små http://www.xxx-if.dk/xxx/program_små

Program for de store http://www.xxx-if.dk/xxx/program_store \n

Nedenfor er de oplysninger du har angivet:
--------------------------------------------------\n
$info
--------------------------------------------------

Venligst lad være med at besvare denne mail da den ikke læses.

Fremsend i stedet en mail til xxx@xx.dk el. benyt formularen
på hjemmesiden http://www.xxx.if.dk/xxx/kontakt

De bedste hilsner fra bestyrrelsen i Minisport";

// email variable not set - load $valid_ref1 page
if (!isset($_POST['email']))
{
echo "<script language=\"JavaScript\"><!--\n ";
echo "top.location.href = \"$valid_ref1\"; \n// --></script>";
exit;
}

$ref_page=$_SERVER["HTTP_REFERER"];
$valid_referrer=0;
if($ref_page==$valid_ref1) $valid_referrer=1;
elseif($ref_page==$valid_ref2) $valid_referrer=1;
if(!$valid_referrer)
{
echo "<script language=\"JavaScript\"><!--\n alert(\"$error_msg\");\n";
echo "top.location.href = \"$valid_ref1\"; \n// --></script>";
exit;
}

$themessage = "Forældre Navn:  $name1 \nForældre Navn:  $name2 \nBarnets Navn:  $barn1 \nBarnets Navn:  $barn2 \nBarnets Navn:  $barn3 \nBarnets Navn:  $barn4 \nAdresse:        $adresse \nPostnummer:    $pnr \nBy Navn:        $by \nTelefon nummer: $tnr \nEmail Adresse:  $email1 \nEmail Adresse 2: $email2 \n";

mail("$replyemail",
    "Tilmelding - Minisport - 2007/2008 (info)",
    "$themessage",
    "From: $email\nReply-To: $email");
mail("$email",
    "Tilmelding Minisport 2007/2008",
    "$replymessage",
    "From: $replyemail\nReply-To: $replyemail");
echo $success_sent_msg;
/*Tak for din tilmelding til minisport*/
?>
Avatar billede roenving Novice
13. maj 2007 - 00:30 #16
Ja, det ville være mit umiddelbare gæt, sender den, hvis du angiver begge navne, alle 4 børn og begge mail-adresser ?-)
Avatar billede maddoggy Nybegynder
15. maj 2007 - 23:32 #17
nej, det vil den heller ikke.
men jeg har fundet ud af hvad problemet var, og det var at jeg lige manglede at definere if (!isset($_POST['email'])) til email1 samt oprette endnu en med email2 samt slå denne fra var ua = navigator.userAgent.toLowerCase(); da der også blev tjekket på dette i php filen, herefter virkede det.

Nu er der så et andet lille problem, hvordan får jeg den til at tjekke for om der er tastet noget i navn2, barn2 osv. så den ikke skrive de linjer med ud hvor der ikke er tastet noget i ?

ps. skal nok oprette et fiktivt spørgsmål med det bagefter så du kan få lidt flere point... for din hjælp er bare super...
Avatar billede Slettet bruger
15. maj 2007 - 23:42 #18
Du kan jo tjekke
if(isset($_POST['navn2'])) {
  // ok
}
if(isset($_POST['barn2'])) {
  // ok
}

ect. ect.
Avatar billede maddoggy Nybegynder
15. maj 2007 - 23:54 #19
dvs. de skal ind før nogen $ er sat i brug feks.

if(isset($_POST['navn2'])) {
  // ok
}
if(isset($_POST['barn2'])) {
  // ok
}


//definere hvad der er indtastet i formularen og gør den klar til at blive sendt i mail
$info = "Forældre:    $name1 \nForældre:    $name2 \nBarn:        $barn1 \nBarn:        $barn2 \nBarn:        $barn3 \nBarn:        $barn4 \nAdresse:    $adresse \nPostnummer:  $pnr \nBy:          $by \nTelefon Nr.: $tnr \nEmail:      $email1 \nEmail:      $email2 \n";

eller skal jeg ha' dem med i $info ?
Avatar billede Slettet bruger
16. maj 2007 - 00:35 #20
//definere hvad der er indtastet i formularen og gør den klar til at blive sendt i mail
$info = "Forældre:    $name1 \n";

if(isset($_POST['navn2'])) {
    $info .= "Forældre:    $name2 \n";   
}
$info .= "Barn:        $barn1 \n";
if(isset($_POST['barn2'])) {
    $info .= "Barn:        $barn2 \n";
}

if(isset($_POST['barn3'])) {
    $info .= "Barn:        $barn3 \n";
}

if(isset($_POST['barn4'])) {
    $info .= "Barn:        $barn4 \n";
}


$info .= "Adresse:    $adresse \n
Postnummer:  $pnr \n
By:          $by \n
Telefon Nr.: $tnr \n
Email:      $email1 \n";
if(isset($_POST['email2'])) {
    $info .= "Email:      $email2 \n";";
}
Avatar billede maddoggy Nybegynder
16. maj 2007 - 00:50 #21
smid lige et svar i denne http://www.eksperten.dk/spm/778606 så får du også point...

takker og bukker pænt.
Avatar billede Slettet bruger
16. maj 2007 - 01:33 #22
Virker dette ^^?
Avatar billede maddoggy Nybegynder
16. maj 2007 - 01:58 #23
har ikke fået det tjekket men det ser meget rigtigt ud, hvis ikke det virker, fifler jeg lidt mere med det...
Avatar billede maddoggy Nybegynder
16. maj 2007 - 02:51 #24
det virker ikke, laver blank side efter submit.
Avatar billede Slettet bruger
16. maj 2007 - 04:14 #25
Prøv at tilføje
echo $info; til sidst i din fil.
Avatar billede maddoggy Nybegynder
16. maj 2007 - 21:30 #26
må ha' været træt i går, den sender igen men den laver stadigvæk det samme med at indsætte i mail selv om feltet er tomt.

Forældre:    txxxx
Forældre:    hxxx 
Barn:        jxxx
Barn:       
Barn:       
Barn:       
Adresse:    åxxxxxx
Postnummer:  8xx3
By:          hxxxx
Telefon Nr.: 86xxxx
Email:      gulgxxx@xx.com
Email:     

Nogen ideer til hvordan man får det ændret?
Avatar billede Slettet bruger
16. maj 2007 - 23:14 #27
Nu ved jeg hvorfor, de bliver jo sat (isset).
if(!empty($_POST['navn2'])) {
    $info .= "Forældre:    $name2 \n"; 
}
$info .= "Barn:        $barn1 \n";
if(!empty($_POST['barn2'])) {
    $info .= "Barn:        $barn2 \n";
}

if(!empty($_POST['barn3'])) {
    $info .= "Barn:        $barn3 \n";
}

if(!empty($_POST['barn4'])) {
    $info .= "Barn:        $barn4 \n";
}


$info .= "Adresse:    $adresse \n
Postnummer:  $pnr \n
By:          $by \n
Telefon Nr.: $tnr \n
Email:      $email1 \n";
if(!empty($_POST['email2'])) {
    $info .= "Email:      $email2 \n";";
}
Avatar billede maddoggy Nybegynder
17. maj 2007 - 11:04 #28
hvis empty bruges, undlades der bare at blive sat noget ind selv om der er indtastet noget i de felter.

som du nok kan se på det hele er jeg nybegynder men er det ikke noget med at man skal sætte det if empty så skal den ikke skrive noget, men hvis indtastet så skrives feks. $info = barn: $barn

men hvordan gøres det så lige det kan jeg ikke regne ud?
Avatar billede maddoggy Nybegynder
17. maj 2007 - 20:23 #29
Hvis jeg bruger denne:
if (empty($name2)){
    $info .="";}

Så kommer det ikke med i mailen, men selv om der indtastes noget i navn2 kommer det ikke med så har jeg prøvet med:
if (empty($name2)){
    $info .="";}
if (isset($name2)) {
        $info .="Forældre: $name2 \n"; }

Det resulter i at Forældre: kommer med i mail selv om der ikke er indtastet noget i feltet, hvad mangler der i denne måde at gøre det på?
Avatar billede roenving Novice
17. maj 2007 - 20:29 #30
Har du prøvet med:

if (!empty($name2) && isset($name2)) {
        $info .="Forældre: $name2 \n"; }
Avatar billede roenving Novice
17. maj 2007 - 21:32 #31
Måske endda lidt mere korrekt:

if (!empty($_POST['name2']) && isset($_POST['name2'])) {
        $info .="Forældre: $name2 \n"; }
Avatar billede maddoggy Nybegynder
17. maj 2007 - 21:35 #32
tak skal du ha' for al din hjælp, smider du et svar...
Avatar billede roenving Novice
17. maj 2007 - 21:40 #33
Velbekomme '-)

-- men coldgate gav dig jo også en hånd, da du kom over i php-afdelingen, så han skal jo nok være med på en deler !-)
Avatar billede maddoggy Nybegynder
17. maj 2007 - 22:17 #34
han fik i en anden tråd så alt er til dig...
Avatar billede maddoggy Nybegynder
17. maj 2007 - 22:18 #35
tak
Avatar billede roenving Novice
18. maj 2007 - 13:20 #36
-- og jeg takker for point ;~}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester