Autor | Zpráva | ||
---|---|---|---|
Chroptík Profil * |
#1 · Zasláno: 24. 11. 2014, 17:32:45
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: <?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: //************************************** // 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. |
||
Str4wberry Profil |
Proměnnou tam dostanete zavoláním toho souboru:
$.get("func.php", { func: "drop_1", drop_var: $('#drop_1').val() } Už tam máte proměnné func a drop_var , podobně si tam můžete poslat cokoliv.
|
||
Chroptík Profil * |
#3 · Zasláno: 27. 11. 2014, 09:44:15
|
||
Časová prodleva: 9 let
|
0