Я разрабатываю веб-страницу php, которая содержит два выпадающих списка (выберите теги), так как один из них используется для отображения типов автомобилей, таких как Toyota, Nissan, Chevrolet и т. Д.
Toyota
Nissan
Chevrolet
Другой должен бытьиспользуется для отображения моделей автомобилей, таких как Toyota Camry, Toyota Corrolla, Toyota Cressida, Toyota Eco и сын, при переходе на тип автомобиля, выбранный из первого выпадающего списка.
Я использую PHP в качестве языка разработки плюс Sybase в качестве базы данных иЯ подключаюсь к нему с помощью ODBC.Я использую Windows-1256 в качестве кодировки символов, так как мои отображаемые данные отображаются на арабском языке.
Я пытаюсь использовать Ajax для реализации этого, но я не знаю, как раньше я использовал Ajax, чтобы вернуть только одно значение, но в этом случае янужно ответить с некоторыми записями базы данных в следующем формате: -
15 "Toyota Camry"
16 "Toyota Corrolla"
17 "Toyota Cressida"
18 "Toyota Eco"
плюс, что данные отправляются на арабском языке, а не на английском, как указано выше, поэтому список может быть следующим: -
15 "تويوتا كامري"
16 "تويوتا كرولا"
17 "تويوتا كرسيدا"
18 "تويوتا إيكو"
как я могу это сделать с помощью Ajax и убедиться, что текст на арабском языке будет отображаться хорошо?
Я жду вашего ответа и помощи и заранее Спасибо .....
Мой код написан ниже, чтобы сделать вещи более понятными и быть полезными для других и получить правильный ответ:
Первый файл
showCarData.php File (Saved as ANSI PHP File)
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1256" />
<script src="js/jquery-1.3.2.min.js" type="text/javascript" /></script>
<script type="text/javascript">
$(document).ready(function()
{
$('#selectCarType').change(function ()
{
$('#selectCarModel option').remove();
$.ajax(
{
url: "getCarModels.php",
dataType: 'json',
data: { CarType: $('#selectCarType').val() },
async: true,
success: function(result)
{
//var x = eval(result);
$.each(result, function(key, value) { $('#selectCarModel').append('<option value="' + key + '">' + value + '</option>'); } );
}
});
$('#selectCarModel').show();
});
});
</script>
</head>
<body>
<select id="selectCarType">
<option value="0" selected="selected">select car type</option>
<?php
//Connecting To The Database and getting $conn Variable
$conn = odbc_connect("database","username","password");
//Connection Check
if (!$conn)
{
echo "Database Connection Error: " . $conn;
}
$sqlCarTypes = "SELECT DISTINCT CarTypeID AS CarTypeCode, CarTypeDesc AS CarTypeName FROM tableCarTypes ORDER BY CarTypeDesc ASC";
$rsCarTypes = odbc_exec($conn,$sqlCarTypes);
if (!$rsCarTypes)
{
echo "<option class='CarType' value='n' >Not Available</option>";
}
else
{
while ( odbc_fetch_row($rsCarTypes) )
{
//Assigning The Database Result Set Rows To User-Defined Varaiables
$CarTypeCode = odbc_result($rsCarTypes,"CarTypeCode");
$CarTypeName = odbc_result($rsCarTypes,"CarTypeName");
//Creating the options
echo '<option class="CarType" style="color:#060;" value="'. $CarTypeCode . '"';
echo '>' . $CarTypeName . '</option>' . "\n";
}
}
odbc_close($conn);
?>
</select>
<select id="selectCarModel">
<option value="0" selected="selected">select car model</option>
</select>
</body>
</html>
и другой файл
getCarModels.php File (Saved as ANSI PHP File)
<?PHP
//determine the Characterset
header('Content-Type: text/html; charset=windows-1256');
//Recieve CarType variable
$CarType = $_GET['CarType'];
// initialize an array that will hold the rows
$result = array();
if ($CarType != Null)
{
//Connecting To The Database and getting $conn Variable
$conn = odbc_connect("database","username","password");
//Connection Check
if (!$conn)
{
echo "Database Connection Error: " . $conn;
}
$sqlCarModels = "SELECT DISTINCT CarModelID AS CarModelCode, CarModelDesc AS CarModelName FROM tableCarTypes WHERE CarTypeID='$CarType' ORDER BY CarModelDesc ASC ";
$rsCarModels = odbc_exec($conn,$sqlCarModels);
if ( $rsCarModels )
{
while ( odbc_fetch_row($rsCarModels) )
{
$CarModelCode = odbc_result($rsCarModels,"CarModelCode");
$CarModelName = odbc_result($rsCarModels,"CarModelName");
$CarModelName = utf8_encode($CarModelName);
$result [$CarModelCode] = $CarModelName;
}
}
else
{
echo "No Data";
}
odbc_close($conn);
}
//send the result in json encoding
echo json_encode($result);
?>
Я надеюсь, что это ясно, о чем я спрашивал, и что любой мог помочь мне найти, где находитсяошибка или вещь, которую я пропускаю, чтобы получить вывод в правильном формате вместостранных символов и символов, которые не могут быть прочитаны, как показано во втором раскрывающемся списке.
Заранее спасибо