phpbar.de logo

Mailinglisten-Archive

RE: [php] Select Auswahlmenü

RE: [php] Select Auswahlmenü

Hannes Korte email at hkorte.com
Son Jan 11 14:22:29 CET 2004


Hallo Martin,

> ich habe ein kleines problem und zwar möchte ich zwei select menüs
> erstellen, welche aus einer mysql datenbank herausgelesen werden.
> dabei soll
> die ausgabe des zweitens menüs davon abhängig sein, welche auswahl beim
> ersten select menü getroffen wurde.
>
> bsp:
> ich wähle beim ersten select menü z.b. nokia aus (die einträge der
> gerätemarken ist ebenfalls in einer datenbank gespeichert), dann soll im
> zweiten menü die gerätetypen angezeigt werden, welche in der datenbank
> gespeichert sind.

ich weiß nicht, ob du dein Problem mittlerweile schon gelöst hast, aber ich
glaube, die Javascript basierte Lösung hat noch keiner gepostet. So mache
ich das immer. Das Beispiel hab ich vor ein paar Jahren mal irgendwo
gefunden. Dabei gehe ich jetzt nicht drauf ein, wie du aus DB-Einträgen ein
Dropdown erstellt, das wurde in diesem Thread ja schon beschrieben.

Dann kannst du statt Websites ja einfach deine Handygeschichten eintragen
und das dritte Dropdown einfach weglassen. Zu dem dritten Dropdown gehören
die ganzen "secondGroup[...].." Einträge. Guck dir das JS einfach mal an.
Wenn Fragen, mailen.


Gruß,
Hannes


--- dynamic JS-Dropdown ---

<body>

<FORM name="isc">
<table border="0" cellspacing="0" cellpadding="0">
  <tr align="center">
    <td nowrap height="11"> &nbsp;

<select name="example" size="1"
onChange="redirect(this.options.selectedIndex)">
<option selected>---Select1-------------</option>
<option>Webmaster Sites</option>
<option>News Sites</option>
</select>

<select name="stage2" size="1"
onChange="redirect1(this.options.selectedIndex)">
<option value=" " selected> </option>
<option value=" " selected>---Select2--------------</option>
<option value=" " selected>---Select2--------------</option>
</select>

<select name="stage3" size="1"
onChange="redirect2(this.options.selectedIndex)">
<option value=" " selected> </option>
<option value=" " selected>---Select3----------------</option>
<option value=" " selected>---Select3----------------</option>
</select>

<script>
<!--

/*
Triple Combo Script Credit
By Hamid Cheheltani/ Website Abstraction (http://www.wsabstract.com)
Visit http://wsabstract.com for this and over 400+ other scripts
*/

var groups=document.isc.example.options.length
var group=new Array(groups)
for (i=0; i<groups; i++)
group[i]=new Array()

group[0][0]=new Option("---Select2---"," ");

group[1][0]=new Option("Now Select This One"," ");
group[1][1]=new Option("JavaScript","47");
group[1][2]=new Option("DHTML","46");
group[1][3]=new Option("CGI","45");

group[2][0]=new Option("Now Select This One"," ");
group[2][1]=new Option("General News","115");
group[2][2]=new Option("Technology News","116");

var temp=document.isc.stage2


function redirect(x){
for (m=temp.options.length-1;m>0;m--)
temp.options[m]=null
for (i=0;i<group[x].length;i++){
temp.options[i]=new Option(group[x][i].text,group[x][i].value)
}
temp.options[0].selected=true
redirect1(0)
}



var secondGroups=document.isc.stage2.options.length
var secondGroup=new Array(groups)
for (i=0; i<groups; i++)  {
secondGroup[i]=new Array(group[i].length)
for (j=0; j<group[i].length; j++)  {
secondGroup[i][j]=new Array()  }}

secondGroup[0][0][0]=new Option("---Select 3---"," ");
secondGroup[1][0][0]=new Option("---Select 3---"," ");
secondGroup[1][1][0]=new Option("Now Select This One"," ");
secondGroup[1][1][1]=new Option("Website
Abstraction","http://wsabstract.com");
secondGroup[1][1][2]=new Option("JavaScript for the non
programmer","http://webteacher.com/javascript/");
secondGroup[1][1][3]=new
Option("Java-Scripts.net","http://java-scripts.net");

secondGroup[1][2][0]=new Option("Now Select This One"," ");
secondGroup[1][2][1]=new Option("Dynamic
Drive","http://www.dynamicdrive.com");
secondGroup[1][2][2]=new Option("Beginner\'s Guide to
DHTML","http://www.geocities.com/ResearchTriangle/Facility/4490/");
secondGroup[1][2][3]=new Option("Web Coder","http://webcoder.com/");

secondGroup[1][3][0]=new Option("Now Select This One"," ");
secondGroup[1][3][1]=new Option("CGI
Resources","http://www.cgi-resources.com");
secondGroup[1][3][2]=new Option("Ada\'s Intro to
CGI","http://adashimar.hypermart.net/");

secondGroup[2][0][0]=new Option("---Select 3---"," ");
secondGroup[2][1][0]=new Option("Now Select This One"," ");
secondGroup[2][1][1]=new Option("CNN","http://www.cnn.com");
secondGroup[2][1][2]=new Option("MSNBC","http://www.msnbc.com");
secondGroup[2][1][3]=new Option("ABC News","http://www.abcnews.com");

secondGroup[2][2][0]=new Option("Now Select A Page"," ");
secondGroup[2][2][1]=new Option("News.com","http://www.news.com");
secondGroup[2][2][2]=new Option("Wired","http://www.wired.com");

var temp1=document.isc.stage3
function redirect1(y){
for (m=temp1.options.length-1;m>0;m--)
temp1.options[m]=null
for
(i=0;i<secondGroup[document.isc.example.options.selectedIndex][y].length;i++
){
temp1.options[i]=new
Option(secondGroup[document.isc.example.options.selectedIndex][y][i].text,se
condGroup[document.isc.example.options.selectedIndex][y][i].value)
}
temp1.options[0].selected=true
}

function redirect2(z){
window.location=temp1[z].value
}

//-->
</script>

		</td>
  </tr>
</table>
</FORM>

<p><font face="arial" size="-2">This free script provided by</font><br>
<font face="arial, helvetica" size="-2"><a
href="http://wsabstract.com">Website
Abstraction</a></font></p>

</body>


php::bar PHP Wiki   -   Listenarchive