Witam. Posiadam skrypt który generuję z bazy modele aut. Pierwszy select pokazuje zawartość tabeli "Marki aut" kolumny to id oraz marka. Drugie pole select łączy się z tabela "modele aut" id mid model. Wiem tyle że, skrypt wiąże id i zawartość w mid. Jeśli id w markach wynosi np 3 to w drugiej tabeli kolumna mid także musi wynosić 3. Wtedy pierwsze pole select będzie wyświetlać zawartość w drugim. Problem polega na tym, kiedy chcę zamiast liczby używać nazw np. w pierwszej tabeli NAZWA_KATEGORII i w drugiej tabeli w kolumnie mid NAZWA_KATEGORII. Skrypt tylko przyporządkowuje dane do liczb. Nie radzi sobie z tekstem i moje pytanie brzmi następująco. Co powinienem zmienić w tym kodzie aby, obsłużyć nazwy zamiast liczb.
ajax_start.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=ISO-8859-2">
<title>jQuery: dynamiczne pola select</title>
<script type="text/javascript" src="http://ajax.googleapis.com/
ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function()
{
$(".marka").change(function()
{
var id = $(this).val();
var dataString = 'id='+ id;
$.ajax
({
type: "POST",
url: "ajax_model.php",
data: dataString,
cache: false,
success: function(html)
{
$(".model").html(html);
}
});
});
});
</script>
</head><body>
<div><h4>Link do wpisu: <a
href="http://blog.tobiasz.org/2010/08/jquery-powiazane-pola-select/">kliknij tutaj</a></h4></div>
<div align="center">
<?php
include("cone.php");
echo '<select name="marka" class="marka" width="25">' .'<option selected="selected">--wybierz markę--</option>';
$result2 = mysql_query("SELECT id, marka FROM marki ORDER BY marka"); $data = $row['marka'];
echo '<option value="'.$id.'">'.$data.'</option>'; }
echo '<select class="model" name="model">' .'<option selected="selected">--wybierz model--</option>'
.'</select>';
?>
</div>
</body></html>
ajax_model.php
<?php
echo '<option selected="selected">--wybierz model--</option>'; $mid = $_POST['id'];
include("cone.php");
$result2 = mysql_query("SELECT id, model FROM modele WHERE mid=".$mid." ORDER BY model"); $model = $row['model'];
echo '<option value="'.$id.'">'.$model.'</option>'; }
}
?>