Dynamicke selecty - ajax

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

Michales1
Level 1.5
Level 1.5
Příspěvky: 117
Registrován: říjen 10
Pohlaví: Nespecifikováno
Stav:
Offline

Dynamicke selecty - ajax

Příspěvekod Michales1 » 25 lis 2014 11:51

Zdravím Vás všechny přítomné.


Udělal jsem si podle scriptu z jednoho webu dva selecty závislé na sobě pomocí ajaxu.
Od Vás bych potřeboval a zároveň moc prosím, menší (asi menší) úpravu ve scriptech.
Jedná se mi o to že bych potřeboval ještě před vybráním v prvním selectu vybrat tabulku z které se budou data načítat.
Asi nejlépe udělat dva inputy typu radia s name zahranicni a druhý domaci.
Inputy udělat zvládnu, ale co nezvládnu, je upravit ajax, protože o ajaxu vůbec nic nevím na tož abych ho upravil.


Přikládám dva soubory které budou potřeba upravit.
Budu opravdu velmi vděčný za jakoukoliv pomoc.
Index.php:

Kód: Vybrat vše

<?php
   include('func.php');
 ?><!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>Editace skladeb</title>
 <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script>

 <script type="text/javascript">
 $(document).ready(function() {
     $('#wait_1').hide();
     $('#drop_1').change(function(){
       $('#wait_1').show();
       $('#result_1').hide();
       $.get("func.php", {
         func: "drop_1",
         drop_var: $('#drop_1').val()
       }, function(response){
         $('#result_1').fadeOut();
         setTimeout("finishAjax('result_1', '"+escape(response)+"')", 400);
       });
         return false;
     });
 });

 function finishAjax(id, response) {
   $('#wait_1').hide();
   $('#'+id).html(unescape(response));
   $('#'+id).fadeIn();
 }
 </script>
 </head>

 <body>
 <p>
 <form action="" method="post">

     <select name="drop_1" id="drop_1">

       <option value="" selected="selected" disabled="disabled">Vyber interpreta</option>

       <?php getTierOne(); ?>

     </select>

     <span id="wait_1" style="display: none;">
     <img alt="Please Wait" src="ajax-loader.gif"/>
     </span>
     <span id="result_1" style="display: none;"></span>

 </form>
 </p>

func.php

Kód: Vybrat vše

//**************************************
 //     Page load dropdown results     //
 //**************************************
 function getTierOne()
 {
     $result = mysql_query("SELECT DISTINCT Contentgroup FROM zahranicni ORDER BY Contentgroup ASC")
     or die(mysql_error());

       while($tier = mysql_fetch_array( $result ))

         {
            echo '<option value="'.$tier['Contentgroup'].'">'.$tier['Contentgroup'].'</option>';
         }

 }

 //**************************************
 //     First selection results     //
 //**************************************
 if($_GET['func'] == "drop_1" && isset($_GET['func'])) {
    drop_1($_GET['drop_var']);
 }

 function drop_1($drop_var)
 {
     include_once('../settings.php');
     $result = mysql_query("SELECT DISTINCT Album FROM zahranicni WHERE Contentgroup='$drop_var' ORDER BY Year,Album ASC")
     or die(mysql_error());

     echo '<select name="tier_two" id="tier_two">
           <option value=" " disabled="disabled" selected="selected">Album</option>';

            while($drop_2 = mysql_fetch_array( $result ))
             {
               echo '<option value="'.htmlSpecialChars($drop_2['Album'],ENT_QUOTES).'">'.htmlSpecialChars($drop_2['Album'],ENT_QUOTES).'</option>';
             }

     echo '</select> ';
     echo '<input type="submit" name="submit" value="Submit" />';
 }

řekl bych že místo názvu tabulky v souboru func.php bude nějaká proměnná ale nevím jak tu proměnnou dostat přes ajax do toho souboru.
Ještě jednou moc děkuji za případnou pomoc

Reklama

Zpět na “Programování a tvorba webu”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 3 hosti