Avatar billede gregblach Nybegynder
16. juni 2006 - 08:02 Der er 4 kommentarer og
1 løsning

Default valg på SELECT liste afhængig af sprogvalg.

Hejsa,

Jeg har lidt kode her som driller. Det er kontaktform, og der er på siden mulighed for at skifte mellem dansk og engelsk version. Det fungerer sådan set fint nok, men jeg kunne godt tænke mig, at når dansk sprog (language_id) er valgt, så skal Danmark vælges per default på SELECT listen istedet for Other Countries.



## OPRINDELIG KODE START ##
<?
If($_SESSION["language_id"] < "1"){
    $language_id = default_field("languages","ID");
}else{
    $language_id = $_SESSION["language_id"];
}
if($language_id == "3")
{
    $subscribetext = '<INPUT TYPE="checkbox" NAME="subscribeInt" CHECKED="true" VALUE="yes">'.print_label("302").'<BR><INPUT TYPE="checkbox" NAME="subscribeDK" VALUE="yes">'.print_label("336").'<BR><BR>';
} else
{
    $subscribetext = '<INPUT TYPE="checkbox" NAME="subscribeInt" VALUE="yes">'.print_label("302").'<BR><INPUT TYPE="checkbox" NAME="subscribeDK" CHECKED="true" VALUE="yes">'.print_label("336").'<BR><BR>';
}

if($_GET["distid"]){
    $sql = "select keyb, mediumtexta, mediumtextb, mediumtextc, mediumtextd, mediumtexte, longtexta, notea from moduletable where keyc = '$_GET[distid]' and languageid = '$language_id'";
    $sql_data = mysql_query($sql);
    $sql_data_row = mysql_fetch_array($sql_data);
    if(strlen($sql_data_row["mediumtextb"]) > 2){
$content_string .= '<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" CLASS="note">
  <TR>
      <TD VALIGN=TOP WIDTH="300px" BGCOLOR="#dcdcdc" STYLE="padding-left: 4px;" CLASS="bdtab"><SPAN CLASS="header3">'.$sql_data_row["mediumtexta"].'</SPAN><BR>
'.eregi_replace("< br >", "<br>", $sql_data_row["notea"]).'<br>
'.print_label(329).' '.$sql_data_row["mediumtextb"].'<BR>
'.print_label(330).' '.$sql_data_row["mediumtextc"].'<BR>
      </TD>
      <TD VALIGN=TOP BGCOLOR="#efefef" STYLE="padding-left: 4px;" CLASS="bdtab">
        <SPAN CLASS="header3">Att.: '.$sql_data_row["mediumtextd"].'</SPAN><BR>
        Email: <A HREF="mailto:'.$sql_data_row["mediumtexte"].'" CLASS="">'.$sql_data_row["mediumtexte"].'</A><BR>
        <A HREF="'.$sql_data_row["longtexta"].'" CLASS="linkspec" onFocus="java script:blur()" target="_blank">'.$sql_data_row["longtexta"].'</A>
      </TD>
  </TR>
</TABLE>';}
}
//$content_string .= '<span style="font-size:x-large;">UNDER CONSTRUCTION</span><br>';
$content_string .= '<SPAN CLASS="small">'.print_label("50").'</span><BR><BR>
<B>'.print_label("54").'</B>

<script language="JavaScript" type="text/javascript">
<!--   
    function ValidateNewsMailer(nm)
    {
        var errortxt = "";
        var interest = false;
        if (nm.Compact.checked){
            interest = true;
        }
        if (nm.Standard.checked){
            interest = true;
        }
        if (nm.WIN.checked){
            interest = true;
        }
        if (nm.Mini.checked){
            interest = true;
        }
        if (nm.Hyd.checked){
            interest = true;
        }
        if (nm.Large.checked){
            interest = true;
        }
        if (nm.Hea.checked){
            interest = true;
        }
        if (nm.Ser.checked){
            interest = true;
        }
       
        if(!interest)
            errortxt += "'.print_label('400').'\n";
           
        //----- Validate segment -----
        segment = false;
        if (nm.segment){
            for(var i = 0; i < nm.segment.length; i++)
            {
                segment = segment ||    nm.segment[i].checked;
//    (nm.segment.length-1) peger på other, virker kun hvis other er den sidste i listen
                if(nm.segment[(nm.segment.length-1)].checked && nm.Segment_other.value.replace(\' \', \'\') == "")
                    segment = false;
            }
        }
        if(!segment){
            errortxt += "'.print_label('402').'\n";
        }
       
        //----- Validate reference -----
        reference = false;
        if (nm.refere){
//            alert(nm.refer.length);
            for(var i = 0; i < nm.reference.length; i++)
            {
                reference = reference || nm.reference[i].checked;
//    (nm.reference.length-3) peger på which studio, virker kun hvis den er 5. sidste i listen
                if(nm.reference[(nm.reference.length-4)].checked && nm.Ref_which_studio.value.replace(\' \', \'\') == "")
                    reference = false;
//                alert("which studio checked");
//    (nm.reference.length-2) peger på which exhibition, virker kun hvis den er 7. sidste i listen
                if(nm.reference[(nm.reference.length-3)].checked && nm.Ref_which_exhibition.value.replace(\' \', \'\') == "")
                    reference = false;
//                alert("which exhibition checked");
//    (nm.reference.length-1) peger på which magazine, virker kun hvis den er 3. sidste i listen
                if(nm.reference[(nm.reference.length-2)].checked && nm.Ref_which_magazine.value.replace(\' \', \'\') == "")
                    reference = false;
//                alert("which magazine checked");
//    (nm.reference.length) peger på reference other, virker kun hvis den er sidste i listen
                if(nm.reference[(nm.reference.length-1)].checked && nm.Reference_other.value.replace(\' \', \'\') == "")
                    reference = false;
//                alert("reference other checked");
            }
        }
        if(!reference){
            errortxt += "'.print_label('436').'\n";
        }
       
        //----- Validate Name -----
        if(nm.Name.value.replace(\' \', \'\') == ""){
            errortxt += "'.print_label('404').'\n";
        }
       
        //----- Validate Email -----
        if(nm.email.value.replace(\' \', \'\') == ""){
            errortxt += "'.print_label('427').'\n";
        }
        if(nm.email.value.replace(\' \', \'\') != "" && (nm.email.value.indexOf(\'@\',0) == -1 ||
              nm.email.value.indexOf(\'.\',0) == -1))
      {
          errortxt += "'.print_label('428').'\n";
      }
       
        //----- Validate Country -----
        if(nm.Country.value == "" && nm.State.value.replace(\' \', \'\') == ""){
            errortxt += "'.print_label('429').'\n";
        }
       
        if(errortxt == "")
//            return false;//return true;
            return true;
        else
        {
            alert(errortxt);
            return false;
        }
    }
-->
</script>

<FORM NAME="News Mailer" onsubmit="return ValidateNewsMailer(this);" ACTION="module.php?MID=200" METHOD="post": 1px; CLASS="note">
<INPUT NAME="from" TYPE="HIDDEN" Value="">
<INPUT NAME="order" TYPE="HIDDEN" Value="Company,Name,Title,email,telephone,fax,address,postal_town,Country,State">
<INPUT NAME="required" TYPE="HIDDEN" Value="Name,email,Country">
<INPUT NAME="group1" TYPE="HIDDEN" Value="Comp">
<INPUT TYPE="hidden" NAME="Catalogue.prize" VALUE="no">
<INPUT TYPE="checkbox" NAME="Prize" VALUE="yes">'.print_label("300").'<BR>
<INPUT TYPE="checkbox" NAME="Catalogue" VALUE="yes">'.print_label("301").'<BR>
<INPUT TYPE="checkbox" NAME="Min" VALUE="yes">'.print_label("334").'<BR>
<BR>'.$subscribetext.'
<INPUT TYPE="checkbox" NAME="Demonstration" VALUE="yes" CLASS="note">'.print_label("303").'<BR>
<INPUT TYPE="checkbox" NAME="Purchase" VALUE="yes" CLASS="note">'.print_label("304").'<BR>
<BR>
<B><FONT COLOR=RED>*</FONT> '.print_label("305").'</B>
<BR>
<TABLE CELLPADDING="0" CELLSPACING="0" CLASS="table">
    <TR>
        <TD VALIGN=TOP WIDTH="165px">
            <INPUT TYPE="checkbox" NAME="Comp" VALUE="yes">'.print_label("306").'<BR>
            <INPUT TYPE="checkbox" NAME="Sta" VALUE="yes">'.print_label("309").'
            <INPUT TYPE="checkbox" NAME="WI" VALUE="yes">'.print_label("335").'
        </TD>
        <TD VALIGN=TOP WIDTH="165px">
            <INPUT TYPE="checkbox" NAME="Mire" VALUE="yes">'.print_label("307").'<BR>
            <INPUT TYPE="checkbox" NAME="Hes" VALUE="yes">'.print_label("310").'<BR>
            <INPUT TYPE="checkbox" NAME="Se" VALUE="yes">'.print_label("1122").'
        </TD>
        <TD VALIGN=TOP>
            <INPUT TYPE="checkbox" NAME="Large" VALUE="yes">'.print_label("308").'<BR>
            <INPUT TYPE="checkbox" NAME="Hs" VALUE="yes">'.print_label("311").'
        </TD>
    </TR>
</TABLE>
<BR>
'.print_label("312").'<BR>
<TEXTAREA NAME="Comments" ROWS="3" COLS="55" STYLE="border: groove; border-color: 000000; font-size: 8pt; border-width: 1px; font-family: Arial;"></TEXTAREA>
<BR><BR>
<B><FONT COLOR=RED>*</FONT> '.print_label("313").'</B><BR>
<TABLE CELLPADDING="0" CELLSPACING="0" CLASS="table">
    <TR>
        <TD VALIGN=TOP WIDTH="140px">
            <INPUT TYPE="radio" NAME="segment" VALUE="Bst">'.print_label("314").'<BR>
            <INPUT TYPE="radio" NAME="segment" VALUE="Te">'.print_label("317").'<BR>
            <INPUT TYPE="radio" NAME="segment" VALUE="Rdio">'.print_label("320").'<BR>
        </TD>
        <TD VALIGN=TOP WIDTH="140px">
            <INPUT TYPE="radio" NAME="segment" VALUE="Ion">'.print_label("315").'<BR>
            <INPUT TYPE="radio" NAME="segment" VALUE="Mn">'.print_label("318").'<BR>
            <INPUT TYPE="radio" NAME="segment" VALUE="Wp">'.print_label("321").'<BR>
        </TD>
        <TD VALIGN=TOP WIDTH="140px">
            <INPUT TYPE="radio" NAME="segment" VALUE="Fr">'.print_label("316").'<BR>
            <INPUT TYPE="radio" NAME="segment" VALUE="e">'.print_label("319").'<BR>
            <INPUT TYPE="radio" NAME="segment" VALUE="Pdio">'.print_label("322").'<BR>
        </TD>
        <TD VALIGN=TOP>
            <INPUT TYPE="radio" NAME="segment" VALUE="F">'.print_label("337").'<BR>
            <INPUT TYPE="radio" NAME="segment" VALUE="Ling">'.print_label("342").'<BR>
            <INPUT TYPE="radio" NAME="segment" VALUE="Re">'.print_label("343").'<BR>
        </TD>
    </TR>
    <TR>
        <TD COLSPAN="3" VALIGN=TOP>
            <INPUT TYPE="radio" NAME="segment" VALUE="other">'.print_label("323").' <INPUT NAME="Segment_other" TYPE="text" SIZE="30" STYLE="border: groove; border-color: 000000; font-size: 9pt; border-width: 1px;"><BR><BR>
        </TD>
    </TR>
</TABLE>
<BR><BR>
<B><FONT COLOR=RED>*</FONT> '.print_label("430").'</B><BR>
<TABLE CELLPADDING="0" CELLSPACING="0" CLASS="table">
    <TR>
        <TD VALIGN=TOP WIDTH="140px">
            <INPUT TYPE="radio" NAME="reference" VALUE="Internet">'.print_label("432").'<BR>
        </TD>
        <TD VALIGN=TOP WIDTH="140px">
            <INPUT TYPE="radio" NAME="reference" VALUE="Friend">'.print_label("434").'<BR>
        </TD>
    </TR>
    <TR>
        <TD COLSPAN="4" VALIGN=TOP>
            <INPUT TYPE="radio" NAME="reference" VALUE="Sdio">'.print_label("438").' <INPUT NAME="Ref_which_studio" TYPE="text" SIZE="30" STYLE="border: groove; border-color: 000000; font-size: 9pt; border-width: 1px;"><BR>
        </TD>
    </TR>
    <TR>
        <TD COLSPAN="4" VALIGN=TOP>
            <INPUT TYPE="radio" NAME="reference" VALUE="Eion">'.print_label("433").' <INPUT NAME="Ref_which_exhibition" TYPE="text" SIZE="30" STYLE="border: groove; border-color: 000000; font-size: 9pt; border-width: 1px;"><BR>
        </TD>
    </TR>
    <TR>
        <TD COLSPAN="4" VALIGN=TOP>
            <INPUT TYPE="radio" NAME="reference" VALUE="Maine">'.print_label("431").' <INPUT NAME="Ref_which_magazine" TYPE="text" SIZE="30" STYLE="border: groove; border-color: 000000; font-size: 9pt; border-width: 1px;"><BR>
        </TD>
    </TR>
    <TR>
        <TD COLSPAN="4" VALIGN=TOP>
            <INPUT TYPE="radio" NAME="reference" VALUE="other">'.print_label("435").' <INPUT NAME="Reference_other" TYPE="text" SIZE="30" STYLE="border: groove; border-color: 000000; font-size: 9pt; border-width: 1px;"><BR><BR>
        </TD>
    </TR>
</TABLE>
<TABLE CELLPADDING="0" CELLSPACING="0" CLASS="table" BORDER="0" WIDTH="100%" STYLE="border-left: none; border-right: none; border-bottom: dashed; border-top: dashed; border-color: black; border-width: 1px;">
    <TR>
        <TD COLSPAN="2">
        <BR>
            <FONT COLOR=RED SIZE="-1">*</FONT> '.print_label("324").'<BR>
            <SELECT NAME="Country" SIZE="1">
            <OPTION SELECTED>Other Countries
                <OPTION VALUE="0610002">Australia
                <OPTION VALUE="0430009">Austria
                <OPTION VALUE="0320008">Belgium
                <OPTION VALUE="0550002">Brazil
                <OPTION VALUE="0010092">Canada
                <OPTION VALUE="8520006">China
                <OPTION VALUE="3570002">Cyprus
                <OPTION VALUE="3850004">Croatia
                <OPTION VALUE="4200005">Czech Republic
                <OPTION VALUE="0451182">Denmark
                <OPTION VALUE="3720002">Estonia
                <OPTION VALUE="3580001">Finland
                <OPTION VALUE="0330009">France
                <OPTION VALUE="0490047">Germany
                <OPTION VALUE="0300004">Greece
                <OPTION VALUE="0310004">Holland
                <OPTION VALUE="3540002">Iceland
                <OPTION VALUE="0620001">Indonesia
                <OPTION VALUE="0451699">India
                <OPTION VALUE="0980004">Iran
                <OPTION VALUE="3530004">Ireland
                <OPTION VALUE="9720001">Israel
                <OPTION VALUE="0390004">Italy
                <OPTION VALUE="0810003">Japan
                <OPTION VALUE="0820003">Korea
                <OPTION VALUE="9610002">Lebanon
                <OPTION VALUE="4230000">Liechtenstein
                <OPTION VALUE="3520003">Luxembourg
                <OPTION VALUE="0451182">Malta
                <OPTION VALUE="0520006">Mexico
                <OPTION VALUE="0310004">Netherlands
                <OPTION VALUE="0640002">New Zealand
                <OPTION VALUE="0470005">Norway
                <OPTION VALUE="0480007">Poland
                <OPTION VALUE="3510002">Portugal
                <OPTION VALUE="0070003">Russia
                <OPTION VALUE="0650004">Singapore
                <OPTION VALUE="4210004">Slovak Republic
                <OPTION VALUE="0270004">South Africa
                <OPTION VALUE="0820003">South Korea
                <OPTION VALUE="0340013">Spain
                <OPTION VALUE="0460001">Sweden
                <OPTION VALUE="0410001">Switzerland
                <OPTION VALUE="8860009">Taiwan, R.O.C.
                <OPTION VALUE="0900005">Turkey
                <OPTION VALUE="3800000">Ukraine
                <OPTION VALUE="0440007">United Kingdom
                <OPTION VALUE="0010100">USA
            </SELECT>
        <BR>
                <SPAN CLASS="small">
                    '.print_label("52").'
                </SPAN>
        <P>
        </TD>
    </TR>
    <TR>
        <TD VALIGN=TOP WIDTH="35%">
            <FONT COLOR=RED>*</FONT> '.print_label("325").'<BR>
            <INPUT NAME="Name" TYPE="text" SIZE="30" Value="" STYLE="border: groove; border-color: 000000; font-size: 9pt; border-width: 1px;">
        <BR>
            '.print_label("326").'<BR>
            <INPUT NAME="Title" SIZE="30" TYPE="text" STYLE="border: groove; border-color: 000000; font-size: 9pt; border-width: 1px;">
        <BR>
            '.print_label("327").'<BR>
            <INPUT NAME="Company" TYPE="text" SIZE="30" Value="" STYLE="border: groove; border-color: 000000; font-size: 9pt; border-width: 1px;">
        <BR>
            <FONT COLOR=RED>*</FONT> '.print_label("328").'<BR>
            <INPUT NAME="email" TYPE="text" SIZE="30" STYLE="border: groove; border-color: 000000; font-size: 9pt; border-width: 1px;">
        <BR>
            '.print_label("329").'<BR>
            <INPUT NAME="telephone" SIZE="30" TYPE="text" STYLE="border: groove; border-color: 000000; font-size: 9pt; border-width: 1px;">
        <BR>
            '.print_label("330").'<BR>
            <INPUT NAME="fax" SIZE="30"  STYLE="border: groove; border-color: 000000; font-size: 9pt; border-width: 1px;">
        </TD>
        <TD VALIGN=TOP>
            '.print_label("331").'<BR>
            <TEXTAREA NAME="address" ROWS="4" COLS="40" STYLE="border: groove; border-color: 000000; font-size: 8pt; border-width: 1px; font-family: Arial;"></TEXTAREA>
        <BR>
            '.print_label("332").'<BR>
            <INPUT NAME="postal_town" TYPE="text" SIZE="30" STYLE="border: groove; border-color: 000000; font-size: 9pt; border-width: 1px;">
        <BR>
            '.print_label("333").'<BR>
            <INPUT NAME="State" TYPE="text" SIZE="30" STYLE="border: groove; border-color: 000000; font-size: 9pt; border-width: 1px;">
        </TD>
    </TR>
    <TR>
        <TD VALIGN=TOP COLSPAN="2">
        <BR>
            <FONT COLOR=RED>*</FONT>
                <SPAN CLASS="small">
                    '.print_label("51").'
                </SPAN>
        <BR><BR>
            <INPUT TYPE="submit" VALUE="Send" STYLE="border: groove; border-color: 000000; font-size: 9pt; border-width: 1px;">
            <INPUT TYPE="reset" VALUE="Reset" STYLE="border: groove; border-color: 000000; font-size: 9pt; border-width: 1px;">
        <BR><BR>
        </TD>
    </TR>
</TABLE>
</FORM>';
?>
## OPRINDELIG KODE SLUT ##
Avatar billede dimsushi Nybegynder
16. juni 2006 - 08:55 #1
<?php
if ($language_id != SKRIV DK LANG ID) {
  <OPTION SELECTED>Other Countries
}
...
if ($language_id == SKRIV DK LANG ID) {
  <OPTION VALUE="0451182" SELECTED>Denmark
}

Mener nu at man skal bruge selected="selected", men nu har jeg brugt dit eget eksempel. Håber det hjælper dig lidt. :)
Avatar billede gregblach Nybegynder
16. juni 2006 - 11:27 #2
Så' her?:

<BR>
            <FONT COLOR=RED SIZE="-1">*</FONT> '.print_label("324").'<BR>
            <SELECT NAME="Country" SIZE="1">

        if ($language_id != 0)
        {
        <OPTION SELECTED>Other Countries
        }
        if ($language_id == 0)
        {
        <OPTION VALUE="0451182" SELECTED>Denmark
        }
                <OPTION VALUE="0610002">Australia
                <OPTION VALUE="0430009">Austria
                <OPTION VALUE="0320008">Belgium
                <OPTION VALUE="0550002">Brazil
                <OPTION VALUE="0010092">Canada
                <OPTION VALUE="8520006">China
                <OPTION VALUE="3570002">Cyprus
                <OPTION VALUE="3850004">Croatia
                <OPTION VALUE="4200005">Czech Republic
                <OPTION VALUE="0451182">Denmark
                <OPTION VALUE="3720002">Estonia
        .......
            </SELECT>
        <BR>
Avatar billede gregblach Nybegynder
23. juni 2006 - 21:08 #3
Nogen der vil hjælpe lidt?
Avatar billede gregblach Nybegynder
29. juni 2006 - 14:00 #4
Anyone?
Avatar billede gregblach Nybegynder
01. august 2006 - 06:44 #5
Lukkes
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